Maven的分模块构建

场景1:

整个大的项目 PROJ 分成了 ModuleA 、 ModuleB, B依赖A。
A必须开发完以后 maven install 项目B才能编译通过。随着模块更多,加入了ModuleC , C依赖B。
C要想正确编译,先安装A,再安装B,它才能编译通过。

所以,我们需要一种机制:
在整体项目上执行各种操作的时候,项目下的各模块自动执行相应的操作。
在 PROJ 上执行 maven install:
项目的聚合

场景2:

项目是基于Spring技术栈来开发的, ModuleA 、 ModuleB、ModuleC很可能是不同的项目组来开发的,如何统一管理项目中的依赖呢?其次,重复的配置怎么办?

所以,也需要一种机制:
让PROJ项目来做整体的版本控制和公共依赖的配置,这样的话,它下面的子模块只需要差异化配置即可。
项目的继承

一、父项目工程

要点:

1.不包含任何代码,也就是说不包含 src 目录

Maven 分模块构建

2. 其打包方式是 pom<packaging>pom</packaging>如下图:

Maven 分模块构建

Maven 分模块构建

4.做一些配置,如 版本控制 或一些公共的依赖。

Maven 分模块构建

二、子项目工程

子工程还可以是另外的一个 pom 类型的工程:

Maven 分模块构建

Maven 分模块构建
最后测试一下执行1009的 install操作。
Maven 分模块构建
Maven 分模块构建

相关文章: