1.概述
当项目特别多时,我们总是需要对每一个maven项目进行编译,测试,打包,安装,发布的操作命令执行一次,这样是非常复杂的,可以利用maven的聚合来解决
2.聚合的意义
当使用父子继承关系来开发时,一定会存在大量的子工程,这时对于子工程可以使用maven的聚合工程来实现一键执行命令.所以聚合就是统一命令的操作
3.聚合的实现
如果我们想要使用一个工程,通过对这个工程命令执行,就能够同时执行其他多个工程的同一个命令,这个工程就是聚合工程,在聚合工程中我们只需要添加一个<modules>标签,配置若干个<module>标签指向其他工程路径就可以完成.聚合工程的packaging类型也得是pom
<modules>
<module>maven-child</module>
</modules>
这个标签的含义就是,当前工程可以管理maven-child,其项目目录是个相对路径,相对当前聚合工程的根目录.也可以使用绝对路径,或其他路径表示聚合.
4.idea中的maven聚合
由于idea存在聚合工程的概念,所以一旦使用maven工程右键new一个module会自动在当前工程添加聚合标签<modules>和<parent>标签,这些也可以通过构建项目时的基本信息填写去除掉.
(没有父子关系也能聚合,但是一般都会去父工程中做聚合,这样就可以按照父子关系依次执行)
我们在今后的开发过程中总会通过在一个父级工程中创建module聚合子工程来管理所有的代码项目结构.