Maven-继承、聚合
2018-02-10 15:36
197 查看
为什么需要继承机制?解决什么问题
①现状:
Hello依赖的Junit 4.0
HelloFriend依赖的是Junit4.0
MakeFriend依赖的是Junit4.9
由于test范围的依赖不能传递,所以必然会分散在各个模块工程中,很容易造成版本不一致。
②需求:统一管理各个模块工程中对Junit依赖的版本
③解决思路:将Junit依赖管理提取到“父”工程中,在子工程中声明Junit依赖时不指定版本,在父工程中统一设定的为准。同时便于修改。
④操作步骤:
创建一个Maven工程作为父工程,注意打包方式是pom
在子工程中声明对父工程的引用
将子工程测坐标与父工程坐标重复的内容删除
在父工程中统一Junit的依赖
在子工程中删除Junit依赖的版本号部分
注意:配置继承后要先安装父工程。
安装工程时需要一个个,有没有一键安装各个模块工程
②配置方式:
在一个总的聚合工程中配置各个参与聚合的模块(会识别依赖关系,顺序无关)
③在聚合工程的pom.xml上右键 maven install
①现状:
Hello依赖的Junit 4.0
HelloFriend依赖的是Junit4.0
MakeFriend依赖的是Junit4.9
由于test范围的依赖不能传递,所以必然会分散在各个模块工程中,很容易造成版本不一致。
②需求:统一管理各个模块工程中对Junit依赖的版本
③解决思路:将Junit依赖管理提取到“父”工程中,在子工程中声明Junit依赖时不指定版本,在父工程中统一设定的为准。同时便于修改。
④操作步骤:
创建一个Maven工程作为父工程,注意打包方式是pom
<groupId>com.zjc.maven</groupId> <artifactId>Parent</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>pom</packaging> |
<parent> <groupId>com.zjc.maven</groupId> <artifactId>Parent</artifactId> <version>0.0.1-SNAPSHOT</version> <!-- 以当前文件为基准的父工程pom.xml文件的相对路径 --> <relativePath>../Parent/pom.xml</relativePath> </parent> |
<groupId>com.zjc.maven</groupId> |
<!-- 依賴的管理 --> <dependencyManagement> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.0</version> </dependency> </dependencies> </dependencyManagement> |
注意:配置继承后要先安装父工程。
安装工程时需要一个个,有没有一键安装各个模块工程
②配置方式:
在一个总的聚合工程中配置各个参与聚合的模块(会识别依赖关系,顺序无关)
<modules> <module>teachingManagement-api</module> <module>teachingManagement-service</module> <module>teachingManagement-web</module> </modules> |
相关文章推荐
- maven聚合与继承实践
- maven的继承和聚合
- maven聚合与继承<一>
- Maven学习(五)-- 聚合与继承
- Maven聚合&继承
- Maven详解之聚合与继承
- Maven实战(六)--子模块的聚合和继承
- maven 继承关系和聚合
- Maven详解 之 聚合与继承
- Maven的继承与聚合
- maven聚合和继承
- 04_Maven核心_POM_聚合与继承
- Maven学习总结(五)——聚合与继承
- maven_项目的依赖、聚合、继承
- Maven学习总结(五)——聚合与继承
- maven 为何要模块划分-聚合/继承
- Maven项目的聚合和继承
- Maven的聚合和继承(六)
- maven的聚合模块和pom继承使用