依靠继承与聚合,实现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 的聚合来进行配置。

相关推荐
Flittly2 分钟前
【SpringAIAlibaba新手村系列】(16)调用百度 MCP 服务
java·笔记·spring·ai·springboot
byzh_rc13 分钟前
[AI编程从入门到入土] 配置文件
java·数据库·ai编程
花千树-01018 分钟前
多步骤 ReAct 实战:让 Agent 自主完成航司比价与订票
java·agent·function call·react agent·harness·j-langchain·多步骤推理
xcLeigh27 分钟前
飞算 JavaAI 进阶实战:从代码生成到系统架构优化的全流程指南
java·系统架构·代码生成·java开发·飞算javaai炫技赛·javaai·飞算
墨北小七1 小时前
小说大模型的分布式训练——数据并行架构设计与实现
分布式
希望永不加班1 小时前
SpringBoot 事件机制:ApplicationEvent 与监听器
java·开发语言·spring boot·后端·spring
Nyarlathotep01131 小时前
自动内存管理(2):垃圾收集器与内存分配策略
java·jvm·后端
却话巴山夜雨时i1 小时前
互联网大厂Java面试实录:技术栈解析与场景剖析
java·大数据·spring boot·spring cloud·微服务·ai·面试
好家伙VCC1 小时前
# 发散创新:基于事件驱动架构的实时日志监控系统设计与实现在现代分布式系统中,**事件驱动编程模型**正
java·python·架构
SuniaWang1 小时前
Java 17实战:Record与密封类的黄金搭档
java·开发语言·python