Maven:maven依赖jar包冲突处理

本文介绍在Maven多模块项目中遇到的jar包冲突问题及其解决方案,包括如何通过exclusions排除冲突版本,以及处理相同类名和package名在不同jar包中的情况。

  Maven多模块项目中偶尔会遇到这种问题:明明项目中相关的jar包已经通过pom.xml引进来了,还是报错找到不到相关的类的错误。这种时候,基本上可以断定是jar包冲突的问题。

  很多情况下jar包会通过依赖传递或者是从父pom中继承而引进来,稍不注意,可能会出现引用的jar包版本不一致的问题,这个时候就会导致上述问题的出现。如下是一般的处理方式:

  1. 相同jar包的不同版本:使用exclusions排除掉冲突的版本包,参考如下配置。
  2. 不同jar包相同类名和package名:完全一样的类路径,但就是在不同的jar包中,这个时候也是先排除掉不需要的jar包,另外如果都是内部jar包的话,有可能是代码规范的问题,可能得需要重构。。。
 1 <dependencies>
 2     <dependency>
 3         <groupId>org.springframework</groupId>
 4         <artifactId>spring-core</artifactId>
 5         <version>4.3.2.RELEASE</version>
 6         <exclusions>
 7             <exclusion>
 8                 <artifactId>commons-logging</artifactId>
 9                 <groupId>commons-logging</groupId>
10             </exclusion>
11         </exclusions>
12     </dependency>
13 </dependencies>

 

转载于:https://www.cnblogs.com/wpbxin/p/9712717.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值