Maven 聚合,自己是用来批量构建(编译、打包、测试...)多个项目。bash
但实际开发中,通常不多单独使用,更多的时候是和 maven 继承一块儿,实现多模块管理。maven
由于继承和聚合常常联合使用,致使不少人分不清二者的边界。所以我将这二者拆开来说。ide
这篇文章只讲聚合,继承请参考 maven继承post
聚合项目建立步骤测试
如图,是建立好的聚合项目结构,最外层的pom内容以下 idea
modules 下能够定义多个 module ,以下spa
<modules>
<module>module-util</module>
<module>module-common</module>
</modules>
复制代码
每一个 module 都有一个值,注意这个值是要聚合的maven项目相对于该 pom 文件的路径名称,而非 module 的 artifactId3d
如图,将 module-util 修改为 module-util2 后依然能识别,idea 显示出了路径 code
但将文件夹名称改为 module-util2 后就不能识别了 cdn
module 的值是要聚合的maven项目相对于该 pom 文件的路径名称
批量编译
批量清理
批量打包
其余就不一一展现了
聚合项目的 pom 文件中,packaging 的类型必须为 pom,若是为其余类型,构建会出错