Maven传递依赖无法引入问题(The POM for xxx is invalid)

一、背景

  应用A直接应用B,应用B依赖二方包C1、C2、C3,应用A传递依赖C1、C2、C3。现应用B升级版本,应用更新B依赖包后发现可正常引入依赖B,但传递依赖的C1、C2、C3不能引入。
  

二、问题排查

  应用根目录打印依赖树:

mvn dependency:tree>tree.txt

  应用依赖树中出现如下警告。警告显示:应用引入的依赖包无效,依赖包中传递依赖项不可用,可以通过开启debug获取更多信息。

...
[WARNING] The POM for com.xxx.yyy:zzz:jar:1.0.1-SNAPSHOT is invalid,
 transitive dependencies (if any) will not be available, enable debug
logging for more 
...

  开启debug功能,重新打印依赖树:

mvn -X dependency:tree>tree.txt

  开启maven debug功能后,警告后紧跟了一条错误信息,如下。错误原因:传递依赖项中有依赖项版本缺失。

...
[WARNING] The POM for com.xxx.yyy:zzz:jar:1.0.1-SNAPSHOT is invalid, 
transitive dependencies (if any) will not be available: 1 problem was 
encountered while building the effective model for com.xxx.yyy:zzz:jar:1.0.1-SNAPSHOT
[ERROR] 'dependencies.dependency.version' for com.xxx.mmm.nnn:jar is missing. @ 
...
三、解决方案

  重新提交应用B父POM到远程仓库,删除本地maven仓库中应用B相关依赖包,在应用A中更新maven依赖,一切OK。

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值