为什么要聚合
分模块开发之后一个项目会被拆分成多个模块。多个模块之间还会有依赖关系。
在一些大型项目中模块比较多,模块之间的依赖关系也会变得错综复杂。
并且在打包的时候还会有一个新的问题,在打包的时候我们要打包的是Springboot项目,但是它再打包时是不会将另外两个模块一起打包。然后会出现一个如下的报错。
会显示找不到另外两个模块.
打包时会自动到本地仓库查找上面的两个jar包,但是本地仓库当中并没有,所以户显示打包失败。
因此要在本地仓库中安装需要的两个jar包,所以要将使用右边栏里面的install,然后就可以看见本地仓库里面出现了需要的两个jar包。
然后再次打包原项目又出现了一个错误如下所示,提示找不到父工程,所以父工程也要install一下。
最后再来打包一次,这一次打包时要选择跳过测试模式,打包完之后就可以看见target目录下面有一个该项目的jar包了。
以上就是分模块开发之后的要对某一个模块进行打包的过程。
以上过程都要先将打包模块的父工程和它所依赖的其他模块都先进行安装maven的本地仓库。
聚合解决打包过程繁琐且复杂的问题,实现一键项目构建。
通常都会把父工程当做聚合工程,然后要打包是直接打包父工程,要安装模块到本地仓库也是直接安装父工程即可,其下的子模块都会安装到本地。
聚合功能实现
通过一个标签指定要聚合的模块即可
在tlias-parent父工程当中加入如下的依赖
<!--聚合其他模块-->
<modules>
<module>../tails-pojo</module>
<module>../tilas-utils</module>
<module>../springboot_mybatis_test</module>
</modules>
然后刷新依赖之后就可以看见如下,其余的项目都已经加入到tlias-parent下了,然后直接在生命周期中打包即可
点击clear之后可以看见控制台输出如下,那几个模块全部清理完毕,原因就是对parent操作后,它下面的几个模块全部都会执行clear操作。
再执行package打包可以看见同样的输出日志,那几个模块都进行了打包操作,然后三个子模块哪里都会出现一个jar包。
总结