8 Maven-聚合

1.Maven-简介 2.Maven-安装和配置 3.Maven-POM文件说明 4.Maven-坐标 5.Maven-依赖详解  6.Maven-仓库 7.Maven-生命周期和插件    8.Maven-聚合 9.Maven-继承和反应堆 10.Maven-使用NEXUS创建私服   11.Mavne-配置从NEXUS下载构件和为项目配置独立仓库   12.Maven-使用Hudson进行持续集成及系统配置  13.Maven-创建Hudson任务  14.Maven-Hudson监视任务、用户管理、工作目录

8 Maven-聚合

Maven的聚合特性能够把项目的各个模块聚合在一起构建,而Maven的继承特性则能帮助抽取各模块相同的依赖和插件等配置,在简化POM的同时,还能保证各个模块配置的一致性。

8.1 聚合


1) 对于聚合模块来说,其打包方式packaging的值必须为pom,否则就无法构建。

2) POM的name字段是为了给项目提供一个更容易阅读的名字。
3) modules,这是实现聚合的最核心的配置。用户可以通过在一个打包方式为pom的Maven项目中声明任意数量的module元素来实现     模块的聚合。每个module的值都是一个当前POM的相对目录。如下图:

为了方便用户构建项目,通常聚合模块放在项目的最顶层,其他模块则作为聚合模块的子目录存在,这样用户得到源码的时候,第一眼发现的就是聚合模块的POM,不用从多模块中去寻找聚合模块来构建整个项目。

备注:聚合模块仅仅是帮助聚合其他模块构建的工具,它本身并无实质的内容。

聚合模块与其他模块的目录结构并非一定要是父子关系,如果使用平行目录结构,聚合模块的POM也需要做相应的修改,以指向正确的模块目录,如下图:


可以执行 mvn clean install命令来感受一下,如下图:



分析:

1)Maven会首先解析聚合模块的POM、分析要构建的模块、并计算出一个反应堆构建顺序,然后根据这个顺序依次构建各个模块。反应堆是所有模块组成的一个构件结构。
2)执行命令后,在构建正确的情况下能看到各模块的名称,而不是artifactId,这也解释了为什么要在POM中配置合力的name字段,其目的是让Maven的构建输出更清晰。输出的最后是一个项目的构建小报告,包括各个模块构建成功与否、花费的时间,以及整个构建花费的时间、使用的内存等。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值