maven 依赖排除 是排除低版本的还是高版本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven 依赖排除 是排除低版本的还是高版本相关的知识,希望对你有一定的参考价值。

参考技术A 要解决这个问题,首先就是要查看pom.xml显式和隐式的依赖类包,然后通过这个类包树找出我们不想要的依赖类包,手工将其排除在外就可以了。
打开pom.xml,通过右键菜单:maven->show dependency 打开分析的图形化页面,如下所示:

通过这个依赖树,我们还可以看到哪些包被间接载入了,找到需要排除的包,右键选着exclude即解决这个间接依赖。

04_项目一众筹00_05Maven依赖概念,依赖范围依赖传递性依赖的原则:解决jar包冲突依赖排除统一版本管理

Maven概念_目录

依赖范围





依赖传递性


具体例子:先跟上一篇文章那样,创建一个新的Maven项目


然后再建一个C
最后我们来实现他们的依赖关系


同理后面的 B依赖于C也是这样做




这个我们可以验证一下,我们会发现test的依赖范围确实不具有依赖性



依赖的原则:解决jar包冲突

像上面的例子,如果我们是都传递给A的,那么会不会有冲突呢

其实不用担心,Maven里面遵循这几个原则:

依赖排除

依赖排除是啥意思,意思就是这包我不想要,你别传递给我



只要隔断B,自然A就不会传递了,所以我们只需要处理B就行了



如果是自己配置了,不排除依赖也行,为啥呢?因为自己配置的路径最短,不影响

统一版本管理



以上是关于maven 依赖排除 是排除低版本的还是高版本的主要内容,如果未能解决你的问题,请参考以下文章

spring boot 依赖排除

Gradle-5.3:依赖-管理依赖的版本(传递(transitive)排除(exclude)强制(force)动态版本(+))

maven 多个jar包版本依赖问题

不排除 Maven 瞬态依赖项(库/jar vaadin json)

idea使用Maven Helper插件排除依赖冲突

如何删除maven中冲突的jar包