八、依赖的排除
1.概念
当A依赖B,B依赖C而且C可以传递到A的时候,A不想要C,需要在A里面把C排除掉。往往这种情况都是为了避免jar包之间的冲突。
所以配置依赖的排除其实就是阻止某些jar包的传递,因为这样的jar包传递过来会和其他jar包冲突。
2.配置方式
<!-- 配置对java工程pro01-maven-java的依赖-->
<dependency>
<groupId>com.sr.maven</groupId>
<artifactId>pro01-maven-java</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>compile</scope>
<!--使用exclusions标签配置依赖的排除-->
<exclusions>
<exclusion>
<!--指定排除的坐标,不需要写version-->
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
3.测试
在之前创建的pro02工程中,对pro01工程的commos-logging依赖进行排除。
使用mvn dependency:tree
查看 是否还存在commos-logging的传递
以上结果显示,只有spring-core传递过来了,不存在commons-logging了。