聊聊maven的pom.xml中的exclusions标签的作用
maven pom.xml的exclusions标签作用
项目中的例子
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency>
解释exclusion标签
这个标签的作用是排除关联依赖的引入,因为maven的pom依赖其中有一点是将关联的依赖全都引入进来 ,
这个标签在这的作用就是 如果关联的依赖和引入的其他依赖可能存在冲突,
就必须将关联的依赖排除掉,所以就用这个标签。
另外这个+s的,大家应该也明白 ,就是可以包含多个吗!!!!
用exclusions来进行排除依赖
exclusions
但依赖调节并不解决所有问题,我们还需要exclusions来进行排除依赖。
例如这样一个情况,工程中引入了A,A依赖B,但是B的版本过旧。
此时可以使用exclusions排除该传递性依赖,并显示声明一个最新版本的B依赖。
比如这样
<dependency> <groupId>com.lowagie</groupId> <artifactId>itext</artifactId> <version>4.2.1</version> <exclusions> <exclusion> <artifactId>bcmail-jdk14</artifactId> <groupId>bouncycastle</groupId> </exclusion> <exclusion> <artifactId>bcprov-jdk14</artifactId> <groupId>bouncycastle</groupId> </exclusion> <exclusion> <artifactId>bctsp-jdk14</artifactId> <groupId>bouncycastle</groupId> </exclusion> </exclusions> </dependency>
在比如若是使用zookeeper发现有log4j的冲突。
我们也可以使用这种方式进行排除
<dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.5.4-beta</version> <exclusions> <exclusion> <artifactId>slf4j-log4j12</artifactId> <groupId>org.slf4j</groupId> </exclusion> </exclusions> </dependency>
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Java使用正则表达式检索、替换String中特定字符和正则表达式的一切
这篇文章主要给大家介绍了关于Java使用正则表达式检索、替换String中特定字符和正则表达式的一切,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-09-09@Valid 校验无效,BindingResult未获得错误的解决
这篇文章主要介绍了@Valid 校验无效,BindingResult未获得错误的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-10-10Java中的HashMap弱引用之WeakHashMap详解
这篇文章主要介绍了Java中的HashMap弱引用之WeakHashMap详解,当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足的问题,需要的朋友可以参考下2023-09-09
最新评论