当 mvn dependency-tree 不起作用时,如何调试 maven 依赖问题?
How can I debug maven dependency problems when mvn dependency-tree doesn't work?
我想弄清楚为什么 IntelliJ 使用了我的项目 Java 文件之一的错误版本(8.1.1 而不是 8.1.2)。 IntelliJ项目是maven项目,依赖比较多
为了调试,我尝试在命令行中使用以下命令:
mvn dependency:tree -Dverbose -Dincludes=jaffa-ria
根据 Maven 网站上的 documentation。我看到很多关于下载的输出,包括 jaffa-ria
包的一些:
Downloaded: https://nexus/content/groups/public/org/jaffa/jaffa-ria/8.1.2-SNAPSHOT/maven-metadata.xml (941 B at 3.2 kB/s)
但是,我没有打印任何依赖关系树。 mvn 命令正常完成并显示 BUILD SUCCESS,我只看到一个警告:
[WARNING] Using Maven 2 dependency tree to get verbose output,
which may be inconsistent with actual Maven 3 resolution
如何找到依赖冲突?我正在使用 Apache Maven 3.5.0。和 Intellij IDEA Ultimate 2019.1.
首先,尝试 dependency:tree
不冗长。如果这不起作用,您可以尝试添加 "dependency convergence" 规则(强制规则)。
如果您有相同依赖项的冲突版本并且此冲突未在 dependencyManagement
中解决,它将失败。此外,它显示了冲突的地方来自哪里。
此外,如果您只想修复给定的版本,可以在 dependencyManagement
.
中进行
使用 Maven Helper plugin for IntelliJ or maven-enforcer-plugin 和 dependencyConvergence
规则。
maven-dependency-plugin
从 3.0 版本开始不再支持显示冲突,正如警告所说,旧版本可能与实际的 Maven 3 分辨率不一致。
我想弄清楚为什么 IntelliJ 使用了我的项目 Java 文件之一的错误版本(8.1.1 而不是 8.1.2)。 IntelliJ项目是maven项目,依赖比较多
为了调试,我尝试在命令行中使用以下命令:
mvn dependency:tree -Dverbose -Dincludes=jaffa-ria
根据 Maven 网站上的 documentation。我看到很多关于下载的输出,包括 jaffa-ria
包的一些:
Downloaded: https://nexus/content/groups/public/org/jaffa/jaffa-ria/8.1.2-SNAPSHOT/maven-metadata.xml (941 B at 3.2 kB/s)
但是,我没有打印任何依赖关系树。 mvn 命令正常完成并显示 BUILD SUCCESS,我只看到一个警告:
[WARNING] Using Maven 2 dependency tree to get verbose output,
which may be inconsistent with actual Maven 3 resolution
如何找到依赖冲突?我正在使用 Apache Maven 3.5.0。和 Intellij IDEA Ultimate 2019.1.
首先,尝试 dependency:tree
不冗长。如果这不起作用,您可以尝试添加 "dependency convergence" 规则(强制规则)。
如果您有相同依赖项的冲突版本并且此冲突未在 dependencyManagement
中解决,它将失败。此外,它显示了冲突的地方来自哪里。
此外,如果您只想修复给定的版本,可以在 dependencyManagement
.
使用 Maven Helper plugin for IntelliJ or maven-enforcer-plugin 和 dependencyConvergence
规则。
maven-dependency-plugin
从 3.0 版本开始不再支持显示冲突,正如警告所说,旧版本可能与实际的 Maven 3 分辨率不一致。