概述
http://blueskator.iteye.com/blog/2229686 (检查maven 项目jar包依赖是否冲突)原文
在项目发布的时候,一般都需要进行依赖冲突检查或者重复类的检查,这个时候我一般会使用下面的两个命令:
mvn -U clean
package
-Dmaven.test.skip=
true
enforcer:enforce -DcheckDeployRelease_skip=
true
-Denforcer.skip=
false
mvn -U dependency:tree -Dverbose
dependency: tree是检查版本冲突的
enforcer:enforce是用来检查重复类的
简单地用
dependency:tree
往往并不能查看到所有的传递依赖。不过如果你真的想要看所有的,必须得加一个
-Dverbose
参数,这时就必定是最全的了。
全是全了,但显示出来的东西太多有时候会很烦,加上
Dincludes
或者
Dexcludes
,就会包含或者排除你指定的依赖了,
dependency:tree
就会帮你过滤出来:比如:
mvn dependency:tree -Dverbose -Dincludes=asm:asm
就会出来asm依赖包的分析信息。
解决办法:1)开发在本地执行此命令可以检查Jar包版本冲突:
mvn -X compile dependency:tree -Dverbose >a.log,
然后在a.log文件里查找 是否有"omitted for conflict with",如果有,则表示jar包有版本冲突 ;
注意:有版本冲突的也会显示编译成功的。
(mvn dependency:tree -Dverbose | grep "omitted for conflict with" )
最后
以上就是大方黄蜂为你收集整理的maven 包冲突检查的全部内容,希望文章能够帮你解决maven 包冲突检查所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复