如何在Maven transitive

时间:2017-09-30 07:04:08

标签: maven dependencies maven-3 dependency-management

在maven中, dependencyManagement 可用于解决依赖冲突问题。

现在我正在开发一个将被许多其他项目使用的常见lib项目。我想使用 dependencyManagement 来解决所有依赖项冲突,以便其他项目不需要处理它。

但是,当我将公共库添加为其他项目的依赖时,我发现 dependencyManagement 不起作用。换句话说,我遇到了相同的依赖冲突问题,这些问题已在公共库的 dependencyManagement 中得到解决。

我知道 dependencyManagement 的复制粘贴是一种制作它的方法,但它非常丑陋且难以维护。

有没有其他方法可以实现这个目标?

感谢。

1 个答案:

答案 0 :(得分:0)

是的,您的“公共库”可以将所需的版本声明为<dependency>(不仅仅是在dependencyManagement中),还可以使用排除项来排除不需要的版本。这也是过渡性的。

对于依赖管理也具有传递性会很棒,但它可能会使Maven的非常复杂的依赖解析过程变得更加复杂。

相关问题