聊聊maven的pom.xml中的exclusions标签的作用

maven pom.xml的exclusions标签作用

项目中的例子

  
   org.springframework.boot
   spring-boot-starter
   
    
     org.springframework.boot
     spring-boot-starter-logging
    
   
  

解释exclusion标签

这个标签的作用是排除关联依赖的引入,因为maven的pom依赖其中有一点是将关联的依赖全都引入进来 ,

这个标签在这的作用就是 如果关联的依赖和引入的其他依赖可能存在冲突,

就必须将关联的依赖排除掉,所以就用这个标签。

另外这个+s的,大家应该也明白 ,就是可以包含多个吗!!!!

用exclusions来进行排除依赖

  • exclusions

但依赖调节并不解决所有问题,我们还需要exclusions来进行排除依赖。

例如这样一个情况,工程中引入了A,A依赖B,但是B的版本过旧。

此时可以使用exclusions排除该传递性依赖,并显示声明一个最新版本的B依赖。

比如这样


    com.lowagie
    itext
    4.2.1
    
        
            bcmail-jdk14
            bouncycastle
        
        
            bcprov-jdk14
            bouncycastle
        
        
            bctsp-jdk14
            bouncycastle
        
    

在比如若是使用zookeeper发现有log4j的冲突。

我们也可以使用这种方式进行排除


   org.apache.zookeeper
   zookeeper
   3.5.4-beta
   
    
     slf4j-log4j12
     org.slf4j
    
   
  

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

你可能感兴趣的:(聊聊maven的pom.xml中的exclusions标签的作用)