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

2023-12-22

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

[错误] 无法在项目 myapp 上执行目标:无法解析项目 com.initech.myapp:war:${buildVersion} 的依赖项:无法在中找到 tangosol:tangosol-coherence:jar:3.3-rc1http://mvnrepo.initech.com/archiva/repository/initechrepo http://mvnrepo.initech.com/archiva/repository/initechrepo已缓存在本地存储库中,除非 initechrepo 的更新间隔已过或强制更新,否则不会重新尝试解析 -> [帮助 1]

我查看了pom.xmlMyApp 中没有提及“tangosol”,也没有父 POM,所以我认为这一定是传递依赖。

Normally,我可以使用Maven 依赖插件 http://maven.apache.org/plugins/maven-dependency-plugin/在命令行上使用mvn dependency:tree http://maven.apache.org/plugins/maven-dependency-plugin/tree-mojo.html显示传递依赖关系。However,由于缺少依赖项,构建失败并出错,而不是显示树。

我怎样才能找到原因missing即使构建失败也会传递依赖?


EDIT:我知道why失败了,神器is我们的本地存储库中丢失了and中央存储库,问题是我的哪个依赖项正在请求它。


应该有更好的办法but如果您在调试模式下运行命令(即-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
    ...

欢迎更好的答案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何确定哪个 Maven 依赖项需要缺少依赖项? 的相关文章

随机推荐