Maven 类包依赖冲突解决

有的时候我们在pom.xml导包的时候,可能会引入其他的类库,这样虽然很省事,但是同时也带来了依赖包冲突的可能,即导入A,B。A--->C1 B--->C2 C1和C2是不同的版本,这时候就先看最短路径,发现C1和C2一样远,这时候就看谁先前面先导入的了,后面的就不会被导入,导致冲突。我们这时候可以有两种方法查看是否有冲突:
方法一:
以idea为例,在pom.xml代码中右键选择Show Dependencies…


Maven 类包依赖冲突解决_第1张图片
image.png

然后会出现以下界面:
Maven 类包依赖冲突解决_第2张图片
image.png
如果发现有红色的了就是有冲突了,我的做法是右键exclude冲突的
方法二:mvn dependency:tree -Dverbose
1.
Maven 类包依赖冲突解决_第3张图片
image.png
2.
Maven 类包依赖冲突解决_第4张图片
image.png

点击➕

3.
Maven 类包依赖冲突解决_第5张图片
image.png
4.名字随意,在命令行打命令,不用打mvn ,点击OK
Maven 类包依赖冲突解决_第6张图片
image.png
5.点击运行即可
image.png
Maven 类包依赖冲突解决_第7张图片
image.png
可以在控制台ctr+f 搜索 conflict如果有冲突会搜到类似如下:
Maven 类包依赖冲突解决_第8张图片
image.png
然后手动exlusion,类似如下:
Maven 类包依赖冲突解决_第9张图片
image.png
然后再重新执行指令看看是否还有冲突

你可能感兴趣的:(Maven 类包依赖冲突解决)