Maven高级---分模块设计,继承(继承关系/版本锁定/自定义属性)

目录

分模块设计

继承与聚合

继承关系

​案例​

版本锁定

自定义属性/引用属性


分模块设计

把一个项目拆分成不同的模块

我们可以把原来一个项目包中的东西单独提出来作为一个模块,也是解耦的思想

然后我们可以通过引入依赖的方式将这两个模块引入,如下

继承与聚合

继承关系

父工程中引入的依赖,子工程可以直接使用,不用再次配置(依赖)

继承描述的是两个工程之间的关系,和java继承类似,子工程可以继承父工程中的配置信息

通过该标签标注是谁的子工程

补充常见打包方式和打包标签,springboot默认为jar

案例


这里设置父工程的查找路径

配置了<parent>以后,子工程就不需要配置<groupId>了,会自动继承下来


版本锁定

一个项目中多个模块使用同一依赖时,可能遇到需要换版本的情况.然而多个模块一起换版本会十分繁琐,因此有了版本锁定:在父工程中统一管理版本号

注意:这个标签只用于统一管理版本,并不会把依赖引入进来,如果想使用依赖需要另行引入(但此时不需要通过version标签来配置版本号)

在今后企业开发中,一般都会直接在父类中配置好统一的版本号

自定义属性/引用属性

版本号是散落在配置类的不同地方的,实际开发中不便于维护

因此可以通过以下方式在<properties>中统一进行管理,方便以后进行修改版本号

相关推荐
随身数智备忘录1 天前
从点检到全生命周期:设备管理体系能解决哪些场景痛点?一套设备管理体系的实战应用
java·网络·数据库
电商API_180079052471 天前
京东商品主图 & 详情图 API 接口实战开发|电商图片数据合规获取方案
java·大数据·人工智能·数据挖掘·网络爬虫
夜郎king1 天前
Java实战:熵权法原理详解+房产价值评估系统设计(上)—— 构建客观多指标评价模型
java·开发语言·熵权法·熵权法java开发
AI人工智能+电脑小能手1 天前
【大白话说Java面试题 第64题】【JVM篇】第24题:强引用、软引用、弱引用、虚引用分别是什么?
java·开发语言·jvm·面试
三十六煩惱風1 天前
2026-05/04~10技术问题处理
java·数据库·sql
霸道流氓气质1 天前
Spring Boot + MyBatis-Plus 实现异常隔离的 Upsert 数据落库(含远程调用数据补全)
spring boot·后端·mybatis
不懂的浪漫1 天前
01|从 Spring Boot 项目理解 RAG:ingest、query、rerank、trace 到 eval
java·人工智能·spring boot·后端·ai·rag
亚林瓜子1 天前
Java中List之间求交集
java·list·retainall
一生了无挂1 天前
深入解析JVM、JRE与JDK:Java技术体系的核心基石
java·开发语言·jvm