我的许多罐子都存在冲突的传递依赖(多个弹簧版本)。我想通过显式管理所有依赖项来避免继承的版本冲突,是否可以禁用Gradle中的所有传递依赖项?
我知道我可以为每个依赖项添加transitive = false
,但我希望有一种更简单的方法。
compile(group: 'org.springframework', name: 'spring', version: '2.5.2') {
transitive = false
}
答案 0 :(得分:49)
我最终使用了:
configurations.all {
transitive = false
}
答案 1 :(得分:7)
如果您只想为所有配置配置一个配置块,可以使用spread-dot运算符来表达这一点。
configurations {
// other configurations e.g. - compile.exclude module: 'commons-logging'
all*.transitive = false
}
答案 2 :(得分:1)
就我而言,我有一个项目(gradle模块)依赖。我使用以下内容来排除Gradle 3中的传递依赖项:
implementation(project(':<module_name>')) {
transitive = false
}