maven_项目的依赖、聚合、继承

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qh870754310/article/details/88171187

一、假设目前有三个maven项目,分别是project.A、project.B、project.C
要求B依赖A、C依赖B但不依赖C
1、B添加对A的依赖

<dependency>
   <groupId>com.project</groupId>
   <artifactId>project.A</artifactId>
   <version>0.0.1-SNAPSHOT</version>
</dependency>

A必须先安装到本地库,否则编译B时会抛异常

A: clean install   B:clean compile

2、C添加对B的依赖,同时排除对A的依赖

<dependency>
   <groupId>com.project</groupId>
   <artifactId>project.B</artifactId>
   <version>0.0.1-SNAPSHOT</version>
   <exclusions>
     <exclusion>
           <groupId>com.project</groupId>
           <artifactId>project.A</artifactId>
     </exclusion>
   </exclusions>
</dependency>

二、假设目前有四个maven项目,分别是project.parent、project.A、project.B、project.C
要求A、B、C整合到一个项目,并且从project.parent继承依赖
1、parent聚合A、B、C三个项目

<packaging>pom</packaging>
<modules>
<module>../project.A</module>
<module>../project.B</module>
<module>../project.C</module>
</modules>

执行clean compile 进行验证,会同时编译A、B、C三个项目

2、A、B、C分别关联parent项目

<parent>
    <groupId>com.project</groupId>
    <artifactId>project.parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</parent>

会自动继承父类的依赖jar
在这里插入图片描述

如果把父类依赖放在<dependencyManagement>中管理,则子类不会自动继承父类的依赖

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qh870754310/article/details/88171187