pom.xml中的标签是干什么用的 继承配置

标签用于声明Maven项目继承的父项目,实现依赖版本统一管理、构建配置共享、属性标准化及多模块工程一致性,须包含groupId、artifactId、version三项。

标签是干什么用的 继承配置">

标签在 pom.xml 中用于声明当前 Maven 项目继承自哪个父项目,核心作用是**复用和统一管理依赖、插件、属性、构建配置等共性内容**。

统一依赖版本管理

父 POM 中定义的 可集中声明依赖的版本和范围,子模块只需写 groupId 和 artifactId,无需指定 version,避免版本不一致问题。

  • 父 POM 中写:2.7.12
  • 子模块中写:spring-boot-starter-web(不写 version)
  • Maven 自动按父定义的版本解析

共享构建配置与默认行为

父 POM 可预设编译源码版本、编码格式、插件配置(如 maven-compiler-plugin、maven-surefire-plugin)、资源过滤规则等,子项目自动继承,减少重复配置。

  • 比如统一设 1717
  • 子模块不用再配 JDK 版本,也不会因遗漏导致编译失败

标准化项目结构与属性

通过 定义公共变量(如 spring-boot.versionproject.build.sourceEncoding),子模块可用 ${xxx} 引用,便于全局替换和维护。

  • 改一次父 POM 的属性值,所有子模块同步生效
  • 适合多模块工程(如 common、service、api)统一技术栈

必须包含的关键子元素

一个有效的 至少要包含三项:

  • :父项目的组织 ID
  • :父项目的构件 ID
  • :父项目的版本号
  • 可选:(默认 ../pom.xml,指向上级目录的父 POM;若父 POM 已发布到仓库,可省略)

基本上就这些。它不是“继承代码”,而是继承配置——让多模块项目更干净、可控、不易出错。