如何确定哪个Maven依赖项需要缺少依赖项?

Sle*_*led 5 maven maven-dependency-plugin

我正在尝试构建一个旧的Maven项目,我收到错误:

[错误]无法在项目myapp上执行目标:无法解决项目com.initech.myapp的依赖关系:war:$ {buildVersion}:未能找到tangosol:tangosol-coherence:jar:3.3-rc1 in http:// mvnrepo .initech.com/archiva/repository/initechrepo缓存在本地存储库中,直到更新间隔为initechrepo或强制更新后才会重新尝试解析 - > [帮助1]

我查看了pom.xmlMyApp,并没有提到"tangosol",也没有父POM所以我认为这必须是一个传递依赖.

通常,我可以在命令行上使用Maven Dependency插件mvn dependency:tree来显示传递依赖项.但是,由于缺少依赖项,构建失败并出错而不是显示树.

即使构建失败,我怎样才能找到缺少传递依赖的原因?


编辑:我知道为什么它失败了,神器由我们的本地仓库丢失中央资料库,问题是我的依赖是自讨苦吃.

Sle*_*led 6

应该有一个更好的方法,但是如果你在调试模式下运行命令(即-X完全命令变为mvn -X dependency:tree),那么你将看到在构建死亡之前打印出的跟踪:

    ...
[DEBUG]    org.springmodules:spring-modules-cache:jar:0.9:compile
[DEBUG]       opensymphony:oscache:jar:2.3:compile
[DEBUG]       tangosol:tangosol-coherence:jar:3.3-rc1:compile
[DEBUG]       oro:oro:jar:2.0.8:compile
[DEBUG]       org.apache.jcs:jcs:jar:1.3:compile
[DEBUG]          concurrent:concurrent:jar:1.0:compile
    ...
Run Code Online (Sandbox Code Playgroud)

欢迎更好的答案.