发现冲突
运行的时候可能报出错误xx类找不到xx方法,xx类找不到,很有可能就是冲突导致的。
定位冲突根因
通过idea maven插件
idea安装插件,maven helper
比如我有两个依赖,guava和findbug。
他们都用到了jsr305,但是我依赖的版本不同。可以进入pom文件点击下面的通过Dependency Anazlyer来查看冲突。
通过maven命令
mvn dependency:tree
可以打印出依赖关系树文章来源:https://www.toymoban.com/news/detail-681834.html
通过jvm参数
-XX:+TraceClassLoading
在java进程启动时增加jvm参数,可以打印加载了哪些类,根据这些内容可以判断是不是加载错了。文章来源地址https://www.toymoban.com/news/detail-681834.html
解决冲突的方法:
- 使用同一版本。
- 通过调整pom文件依赖顺序,如果冲突版本差别不大,我建议把新版本放在上面,优先加载。
- 通过exclusion解决传递依赖性
到了这里,关于【Maven】如何发现,定位,解决依赖冲突的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!