【问题标题】:How can I view transitive dependencies of a Maven pom.xml file?如何查看 Maven pom.xml 文件的传递依赖项?
【发布时间】:2011-08-31 22:23:16
【问题描述】:

是否有 CLI 工具可用于快速查看 Maven pom.xml 文件的传递依赖关系?

【问题讨论】:

标签: maven-2 maven dependencies pom.xml


【解决方案1】:

在 CLI 上,使用 mvn dependency:tree
(这里有一些额外的Usage notes

在多模块 maven 项目上运行 dependency:tree 时,请改用 mvn compile dependency:tree1

否则,M2Eclipse(Eclipse 的 Maven 集成)中的 POM 编辑器非常好,它包含分层依赖视图。


1如果你不编译,你可能会得到错误Failed to execute goal on project baseproject: Could not resolve dependencies for project com.company:childproject:jar:1.0.0: Could not find artifact。这可能是因为dependency:tree 命令不构建项目并且不解析依赖项,并且您的项目未安装在 maven 存储库中。

【讨论】:

  • 如果您试图在编译时确定您所依赖的传递依赖项,那么这并不实际。它只是为您提供了所有传递依赖项的巨大列表,无论是否使用。
  • 另外,要查看传递依赖项之间的冲突解决方案,您需要添加详细信息: mvn dependency:tree -Dverbose https://maven.apache.org/plugins/maven-dependency-plugin/examples/resolving-conflicts-using-the-dependency-tree.html
  • 我认为@kisna 建议的详细选项是必不可少的-否则,将不会绘制重复的传递依赖关系。
  • 另一个警告:如果项目使用 Shade 插件,dependency:tree 可能无法绘制其传递依赖关系。
猜你喜欢
  • 2020-10-12
  • 1970-01-01
  • 2013-02-17
  • 1970-01-01
  • 1970-01-01
  • 2014-08-03
  • 2014-02-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多