Java的jar包依赖版本冲突解决

文章介绍了Maven处理依赖冲突的策略,包括最短路径优先和最先声明优先,并详细讲解了如何使用MavenHelper插件来查找和删除冲突的依赖版本,简化了处理复杂依赖关系的过程。
摘要由CSDN通过智能技术生成

参考:

https://blog.csdn.net/weixin_38898423/article/details/128178055

https://blog.csdn.net/Yal_insist/article/details/127669985

一、依赖冲突

不同的第三方jar包可能同时对某一个jar包的不同版本含有依赖,但是Maven解析pom.xml文件时,同一个jar包只会保留一个

Maven默认处理策略:
1.最短路径优先
Maven 面对 D1 和 D2 时,会默认选择最短路径的那个 jar 包,
即 D2。E->F->D2 比 A->B->C->D1 路径短1。

2.最先声明优先
如果路径一样的话,如: A->B->C1, E->F->C2 ,两个依赖路径长度都是 2,那么就选择最先声明。

二、使用Maven Helper插件查找、删除冲突版本

不使用插件的话,想要找到依赖关系就要去看依赖关系图,但是很复杂,而且不能直接删除其中的冲突版本,只能知道哪些包存在版本冲突

image

ctrl+滚轮、鼠标可以放大、拖动图,其中红色虚线对应的部分就是这个包依赖于另一个包的冲突版本

image

1.安装Maven Helper插件

文件-设置-插件-Mark

image

2.点击pom.xml文件

发现底部出现了文本和analyzer的选项

image

3.选择analyzer分析器,删除对应冲突包或修改包版本(conflict即选择冲突包)

image

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值