Maven:maven依赖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>

 

posted @ 2018-09-27 14:04  心明谭  阅读(529)  评论(0编辑  收藏  举报