依靠继承与聚合,实现maven搭建分布式项目

简介聚合

对于复杂的Maven项目,一般建议采用多模块的方式来设计开发,便于后期维护管理。但是构建项目时,如果每次都需要按模块一个一个进行构建会十分麻烦,而Maven的聚合功能就可以很好的解决这个问题,当用户对聚合模块执行构建任务时,会对所有被其聚合的模块自动地依次进行构建任务

这里通过一个实例进行介绍,在manager模块中有 manager-mapper、manager-service、manager-controller、manager-pojo 四个模块,为了避免依次构建这四个模块,我们这里添加了一个新的模块manager用于将这四个模块聚合在一起,通常我们称manager为聚合模块。从下图实例我们可以看出,聚合模块不包含任何源码,其只有一个POM文件。因为该模块的作用只是为了聚合其他模块方便我们一次性构建其下的所有模块,所以其POM文件的内容与一般的POM文件有所差别。首先,将打包方式packaging元素设置为pom,然后通过modules下的module子元素来添加该聚合模块需要聚合的模块的目录路径

在使用Java开发项目时,一种常见的情形是项目由多个模块组成,软件折及人员往往会采用各种方式对软件划分模块,以得到更清晰de设计以及更高的重用性。Maven的聚合特性能够帮助把项目的各个模块聚合在一起构建。

继承与聚合的实际案例

1.父项目,实现聚合,被子项目继承

2.子项目(1),实现被聚合,继承父项目

3.子项目(2),实现被聚合,继承父项目

4.子项目(3),实现被聚合,继承父项目

区别

Maven 的聚合其实就是项目与子项目的表示,其存在的意义在于快速构建项目。例如我们有一个淘宝商城项目,这个项目有账号子项目和邮件子项目。在这个时候我们需要在 Maven 中表达这种项目归属关系,那么我们就可以用 Maven 的聚合来进行配置。

相关推荐
2503_94697186几秒前
【FullStack/ZeroDay】2026年度全栈魔法架构与分布式恶意节点清除基准索引 (Benchmark Index)
分布式·网络安全·架构·系统架构·区块链·数据集·全栈开发
回家路上绕了弯4 分钟前
Resilience4j全面指南:轻量级熔断限流框架的实战与落地
分布式·后端
SimonKing4 分钟前
你的网站SSL证书又要过期了?这个工具能让你永久告别焦虑
java·后端·程序员
CryptoRzz5 分钟前
印度交易所 BSE 与 NSE 实时数据 API 接入指南
java·c语言·python·区块链·php·maven·symfony
梵得儿SHI8 分钟前
SpringCloud 核心组件精讲:Sentinel 熔断限流全攻略-流量控制、熔断降级、热点参数限流(含 Dashboard 部署 + 项目集成实操)
java·spring cloud·sentinel·熔断降级·热点参数限流·微服务流量控制
麦兜*9 分钟前
Spring Boot 3.x 升级踩坑大全:Jakarta EE 9+、GraalVM Native 与配置迁移实战
java·spring boot·后端·spring·spring cloud
独断万古他化14 分钟前
【SpringBoot 配置文件】properties 与 yml 的基础用法、格式及优缺点
java·spring boot·后端
玄〤15 分钟前
Spring MVC 讲解:从初始化流程到请求参数与 JSON 处理全解析(黑马课程ssm笔记总结)(day5)
java·spring·json·mvc
廋到被风吹走18 分钟前
【Java】【JVM】垃圾回收深度解析:G1/ZGC/Shenandoah原理、日志分析与STW优化
java·开发语言·jvm
xrkhy19 分钟前
Java全栈面试题及答案汇总(3)
java·开发语言·面试