Maven的继承。
Maven的聚合。
1.Maven的继承
1)为什么要有继承?
假如存在一下现状:
- MakeFriends工程依赖Hello2工程,Hello2工程依赖Hello工程。
- ①Hello依赖的junit:4.0
- ②Hello2依赖的junit:4.2
- ③MakeFriends依赖的junit:4.9
- junit依赖是test范围的,由于test范围的依赖不能传递,所以必然会分散在各个模块工程中,很容易造成版本不一致。
- 这就产生了一种需求:如何统一管理各个模块工程中对junit依赖的版本。
2)继承
解决上述问题的思路:将junit依赖统一提取到“父工程”中,在“子工程”中声明junit依赖时不指定版本号,而是以父工程中统一设定的为准,同时还便于修改版本号。
这就产生了“继承”的概念。
具体操作步骤如下:
- ①创建一个Maven工程作为父工程。注意:打包方式为 pom。
1 | <groupId>com.cwz.maven</groupId> |
- ②在子工程中声明对父工程的引用。
1 | <!--子工程中声明对父工程的引用--> |
- ③将子工程的坐标中与父工程坐标中重复的内容删除。如图,删除图中标警告的地方:
- ④在父工程中统一管理junit的依赖。
1 | <!-- 统一配置依赖管理 --> |
- ⑤在子工程中删除junit依赖的版本号部分。如图,删除图中标警告的地方:
- 注意:配置了继承后,执行
mvn install
安装命令时,要先安装父工程。
2.聚合
- ①作用:一键安装本地开发的相互依赖的各个工程模块。
- ②配置方式:在一个“总的聚合工程”中配置各个参与聚合的模块信息。
- 注意:可以将父工程作为聚合工程,但聚合工程可以不是父工程。
1 | <!--一般在父工程中配置聚合--> |
- ③使用方式:在聚合工程的pom.xml上点击右键→Run as→Maven install,即可。