当前位置: 首页 > news >正文

Maven工具学习使用(六)——聚合与继承

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

一般说来一个项目的子模块都应该使用同样的groupId,如果他们一起开发和发布,还应该使用同样的version,此外,它们的artifactId还应该使用一致的前缀,以方便同其他项目区分。

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

聚合模块与其他模块可以是父子关系也可以是平行关系,平行关系需要正确配置父pom中具体元素,eg:../sub-module

Maven会首先解析聚合模块的POM、分析要构建的模块、并计算出一个反应堆构建顺序,然后根据这个顺序一次构建各个模块。反应堆是所有模块组成的一个构建结构

可继承的pom元素

groupId

version

description:项目的描述信息

organization:项目的组织信息

inceptionYear:项目的创始年份

url:项目的URL地址

developers:开发者信息

contributors:贡献者信息

distributionManagement:项目的部署配置

issueManagement:项目的缺陷跟踪系统信息

ciManagement:项目的持续集成系统信息

scm:项目的版本控制系统信息

mailingLists:项目的邮件列表信息

properties:自定义的maven属性

dependencies 项目的依赖管理配置

dependencyManagement:项目的依赖管理配置

reposi

相关文章:

  • 24、web前端开发之CSS3(一)
  • java对pdf文件分页拆分
  • 第十四届MathorCup高校数学建模挑战赛-C题:基于 LSTM-ARIMA 和整数规划的货量预测与人员排班模型
  • 股指期货的连续主力合约能不能代表这个股指期货?
  • 人体细粒度分割sapiens 实战笔记
  • 数据设计(范式、步骤)
  • kubernetes》》k8s》》 kubeadm、kubectl、kubelet
  • Spring 约定编程案例与示例
  • uv 命令用conda命令解释
  • iOS抓包-charles和Stream
  • SAP:越来越多组织通过AI解决数据问题,迈向大规模应用
  • leetcode33.搜索旋转排序数组
  • 云原生四重涅槃·破镜篇:混沌工程证道心,九阳真火锻金身
  • 【商城实战(93)】商城高并发实战:分布式锁与事务处理深度剖析
  • Linux驱动编程 - UVC驱动分析
  • Java Optional:优雅处理空值的艺术,告别NullPointerException
  • 高并发金融系统,“可观测-可追溯-可回滚“的闭环审计体系
  • 小林coding-17道Java基础面试题
  • MySQL 基础查询语句参考手册
  • 【Zabbix技术系列文章】第①篇——基础入门
  • 上海老字号卖黄金,与动漫IP联名两周销售额近亿元
  • 总奖金池百万!澎湃与七猫非虚构写作与现实题材征文大赛征稿启动
  • 大环线呼之欲出,“金三角”跑起来了
  • 体坛联播|巴萨提前2轮西甲夺冠,郑钦文不敌高芙止步4强
  • 四川甘孜炉霍县觉日寺管委会主任呷玛降泽被查
  • 北京警方:海淀发生小客车刮碰行人事故4人受伤,肇事司机已被查获