【发布时间】:2014-05-29 11:37:17
【问题描述】:
我有一个 Maven 项目,它依赖于许多其他项目,这些项目通常有几个相互冲突的依赖项。
Maven 将使用它的最近获胜策略自动解决依赖冲突,在这种情况下,它会在结果mvn dependency:tree 上列出所选版本:
[信息] | - (commons-collections:commons-collections:jar:2.1:compile - 与 2.0 冲突省略)
在本例中,如果选择 commons-collections:2.1,我将有一个备用依赖树,可能包含多个其他依赖项。
我需要知道的是,如果选择其他版本,这棵替代树会是什么样子。
我目前正在做的方式是识别与其他依赖项发生冲突的顶级依赖项,并为此运行依赖项树,即通过有效地创建具有单个依赖项的多个新 pom 来获取它们的树.这行得通,我可以为此编写一个脚本,但这是一个手动过程。我正在寻找 Maven 目标或其他方法,这将作用于我的 pom 使事情变得简单。
我查看了 Maven 依赖插件的其他目标,例如分析,但在这种情况下它们似乎没有帮助。
【问题讨论】:
标签: maven maven-3 maven-dependency-plugin