传递性:

模块A 依赖 模块1

模块B 依赖 模块A 

则模块B 依赖 模块1(依赖会传递给B对应的jar包依赖会传递过来)


根据依赖的传递性只需要在底层模块配置依赖,上层模块也会自动添加依赖


依赖排除:

依赖排除通过

<exclusions>

       <exclusion></exclusion>

</exclusions>

标签排除依赖。

配置例子:

<dependency>
<groupId>com.atguigu.maven</groupId>
<artifactId>HelloFriend</artifactId>
<version>0.0.1-SNAPSHOT</version>
<type>jar</type>
<scope>compile</scope>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>

假设

模块A  依赖 模块1

模块B 依赖 模块A

模块C 依赖 模块B

在模块B中配置了排除模块1 则模块B 和 模块C都没有模块1,但是模块A不影响,依赖中依然含有模块1