立即学习:https://edu.csdn.net/course/play/7907/162058?utm_source=blogtoedu
2. 聚合
将多个子项目添加到一个父项目中,然后通过父项目进行操作,从而实现对所有聚合的子项目的操作
<!--聚合子项目,指定子项目的根目录-->
<modules>
<module>../child01</module>
<module>../child02</module>
</modules>
3. 依赖
项目C——>项目B——>项目A
概念:如果项目c依赖于项目b,项目b依赖于项目a,则项目c也依赖于项目a,这叫依赖的传递
3.1 控制依赖的传递
并不是所有的依赖都会被传递
·scope为compile的依赖会被传递
·scope为test的依赖不会被传递
·配置potional为true的依赖不会被传递
<dependence>
<groupID>log4j</groupID>
<artifactID>log4j</artifactID>
<optional>true</optional>
</dependency>
3.2 不会出现jar包的冲突
使用maven不会jar包冲突,通过两个原则来保证
·就近原则
child03——>child02——>child01
·优先定义原则
child03——>child02——>child01
——>child04
3.3 不要传递的依赖
方式1:在依赖的项目中配置不允许传递
<optional>true</optional>
方式2:在当前项目中配置不接受传递的特定依赖
<!--依赖于child01-->
<dependency>
<groupID>com.itany.study</groupID>
<artifactID>child01</artifactID>
<version>1.0-SNAPSHOT</version>
<!--不接受特定的依赖-->
<exclusions>
<exclusion>
<groupID>log4j</groupID>
<artifactID>log4j</artifactID>
</exclusion>
</exclusions>
</dependency>