mvn dependency:tree 使用详解
总阅读 次
mvn dependency:tree 使用详解
在实际开发过程中,会经常碰到maven依赖冲突的问题,导致编译的时候报一些异常,这里提供一个查询包结构间的依赖关系的方法,来解决问题
指令:mvn dependency:tree -Dverbose>temp/tree.txt
该命令是打印详细的maven tree 并放入当前目录下的temp目录下的tree.txt (需要自己新建temp目录),打印到txt中更加方便排查。
生成的txt文件中
最后写着compile的就是编译成功的
最后写着omitted for duplicate的就是有JAR包被重复依赖了,但是JAR包的版本是一样的
最后写着omitted for conflict with xx的,说明和别的JAR包版本冲突了,该行的JAR包不会被引入
通过在txt文件中检索上传关键字conflict可以找到冲突的jar包所在,从而去除掉。
去除方法:
例:1
2
3
4
5
6<exclusions>
<exclusion>
<groupId>net.minidev</groupId>
<artifactId>json-smart</artifactId>
</exclusion>
</exclusions>
去除掉这个依赖就ok啦。