maven 检查依赖冲突和版本冲突

当maven搭建的项目发生jar包依赖冲突时,可以使用下面命令进行处理:

 

mvn -U dependency:tree -Dverbose


在项目发布的时候,一般都需要进行依赖冲突检查或者重复类的检查,上面tree命令只能检查jar依赖的冲突,不能看到所有的类的依赖关系,还有下面这个命令 enforcer:enforce 是用来检查重复类的。

mvn -U clean package -Dmaven.test.skip=true enforcer:enforce -DcheckDeployRelease_skip=true -Denforcer.skip=false



dependency: tree是检查版本冲突的

enforcer:enforce是用来检查重复类的

简单地用 dependency:tree往往并不能查看到所有的传递依赖。不过如果你真的想要看所有的,必须得加一个 -Dverbose参数,这时就必定是最全的了。

这样会产生大量日志信息,不便于查找,加上 Dincludes或者 Dexcludes,就会包含或者排除你指定的依赖了, dependency:tree就会帮你过滤出来:比如:

mvn dependency:tree -Dverbose -Dincludes=asm:asm 就会出来asm依赖包的分析信息。

你可能感兴趣的:(maven,检查依赖冲突和版本冲突,maven打包,maven将Spring,Framework打入jar)