devops 如何快速的解决Maven依赖冲突?
如何快速的解决Maven依赖冲突?
1. 确定有问题的jar包的名称。您通常可以找出eclipse中出现冲突类的依赖包。并确定要使用的实际包和冲突包。
2. 通过mvnd依附性:tree>tree.txt导出所有依赖项。
3. 在导出的依赖关系文件中查找与问题相关的jar。确定这些jar是如何依赖的,它们是直接依赖的还是通过传递依赖关系引入的。
4. 找出相互冲突且需要排除的顶级依赖项,并分析冲突的原因。冲突的原因可能如下:相同的jar包但是不同的groupid和artifactid。这种冲突只能通过设置依赖项的<exclusions>来消除。所需版本jar包的依赖路径较长,这种冲突可以直接决定所需版本的依赖关系是什么,因此路径最短,优先级最高。
5. 最后,我们可以打包mvninstall以确认war包中是否存在排除的依赖项。
各位是如何解决maven包依赖冲突或有什么检测插件推荐?
Maven冲突解决是必不可少的
首先,开发工具IDE,我在这里使用的是IntelliJ IDE,
1。命令,打开工具的设置窗口
2。在搜索设置中输入插件
3。搜索Maven在市场表页的帮助,并安装pom.xml文件
您会发现底部有一个依赖项分析栏
如果存在依赖项冲突,它会显示哪些包冲突,只需安装冲突解决问题
希望我的答案能对您有所帮助。
本项目存在的问题如下:原因:java.lang.NoClassDefFoundError文件:无法初始化类org.apache.log4j. log4j loggerfactory。在网上搜索并给出建议后,发现log4j-over-slf4j.jar和slf4j-log4j12.jar会在同一类路径中出现此错误。解决方案:从相关jar中排除slf4j-log4j12.jar,但是检查Maven项目中的POM文件,您没有配置这个jar的依赖关系。Guess Maven加载其他jar引入的依赖包。打开pom.xml文件文件,并在依赖层次结构中查看jar包的依赖层次结构。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。