我在gradle文档中读到,默认情况下已完成依赖项冲突解决,以便gradle选择lib的最新版本。 我注意到在一个看起来不错的简单项目中。尽管在多模块项目中,每个模块似乎都可以单独解决其依赖性。
示例:
- Module-A:
Dependency-C -> Transitive-Dependency-Y-Version1
Dependency-D -> Transitive-Dependency-Y-Version2 <<<< this one is chosen for the module
- Module-B:
Dependency-E -> Transitive-Dependency-Y-Version1
Dependency-F -> Transitive-Dependency-Y-Version3 <<<< this one is chosen for the module
但是最后它将同时添加到Transitive-Dependency-Y-Version3
和Transitive-Dependency-Y-Version2
的类路径中
为什么会这样?是否有一种方法可以告诉gradle在整个项目中仅对每种可传递依赖项类型使用一个版本(而无需一个个地强制执行)?