首页 > 技术文章 > jar包中的依赖jar版本冲突

zhaiyt 2019-07-19 10:28 原文

背景,项目中之前引入了一个 图片上传的jar

<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.4</version>

后来由于需要,新引入了

<dependency>
       <groupId>net.sourceforge.htmlunit</groupId>
       <artifactId>htmlunit</artifactId>
       <version>2.35.0</version>
</dependency>

结果使用的时候就报错了,报的是common-io jar某个方法的错

后来百度后,晓得是因为上面的两个jar文件中都依赖 common-io jar 两个版本不一样,后面的需要的是2.6版本的,前面引入的是2.2版本,并且覆盖了2.6,导致凉凉

解决方法:将io从低版本移除

<dependency>
         <groupId>commons-fileupload</groupId>
         <artifactId>commons-fileupload</artifactId>
         <version>1.4</version>
         <exclusions>
             <exclusion>
                 <groupId>commons-io</groupId>
                 <artifactId>commons-io</artifactId>
             </exclusion>
         </exclusions>
 </dependency>

 

推荐阅读