美文网首页
maven踩坑-解决依赖冲突

maven踩坑-解决依赖冲突

作者: 我不懂我不懂a | 来源:发表于2020-05-10 11:42 被阅读0次

    maven的主要功能是:项目构建项目依赖管理,软件项目持续集成,版本管理,项目站点描述信息管理

    依赖冲突产生的原因

    image.png

    如图,项目X引入了Y包和G包,Y和G都依赖了Z,但是两个Z的版本不同,maven默认的机制是就近原则(最短路径),路径一样长的先加载哪个jar包就使用它。这样可能就就会报错:不同版本的jar包可能有的api不一样,版本不兼容。

    通过命令来查看maven项目的依赖树,据说加-Dverbose是查看全部依赖树,不然就是一部分

    mvn dependency:tree [-Dverbose]
    

    查看某个jar包的依赖

    mvn dependency:tree -Dverbose -Dincludes=groupId:artifactId
    

    然后Fix它,使用exclusions标记排除依赖:


    image.png

    引用: https://blog.csdn.net/triski/article/details/82825637
    https://maven.apache.org/plugins/maven-dependency-plugin/examples/resolving-conflicts-using-the-dependency-tree.html
    https://dzone.com/articles/solving-dependency-conflicts-in-maven

    相关文章

      网友评论

          本文标题:maven踩坑-解决依赖冲突

          本文链接:https://www.haomeiwen.com/subject/mkzdnhtx.html