Maven的模块化管理中的版本锁定

配置模块继承后

在此时,我们会在父类里统一配置各个子类的依赖的版本

这样做可以统一各子类的依赖版本,不仅避免了版本冲突,并且避免升级依赖的时候要在子类里一个一个修改

jjwt为例子,在父类的pom里我们通过在<properties>里定义它的版本号和引用名称<jjwt.version>

js 复制代码
<properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  <jjwt.version>0.9.1</jjwt.version>
</properties>

这样就可以运用<dependencyManagement>来控制所有子类的jjwt版本,在<version>里填入在<properties>里定义好的<jjwt.version>来让版本锁定生效

js 复制代码
<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>io.jsonwebtoken</groupId>
      <artifactId>jjwt</artifactId>
      <version>${jjwt.version}</version>
    </dependency>
  </dependencies>
</dependencyManagement>

在此之后我们在子类的pom里添加依赖的时候只需要输入

js 复制代码
<dependencies>
 <dependency>
  <groupId>io.jsonwebtoken</groupId>
  <artifactId>jjwt</artifactId>
 </dependency>
</dependencies>

就可以成功添加jjwt依赖

使用<dependencyManagement>标签只会锁定依赖版本,不会产生真正的依赖

<dependencies>会产生

相关推荐
hahjee15 小时前
Go编写的ANSI终端颜色和样式控制库在OpenHarmony PC上的完整适配实战
开发语言·后端·鸿蒙
小火锅啊15 小时前
java实现生成PDF文件
后端
老华带你飞15 小时前
健身房预约|基于springboot 健身房预约小程序系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·小程序
paopaokaka_luck15 小时前
基于SpringBoot+Uniapp的自习室预约小程序(腾讯地图API、Echarts图形化分析、二维码识别)
vue.js·spring boot·后端·spring·echarts
树洞RoBot15 小时前
Spring框架深度解析:从核心原理到企业级实战
后端
..过云雨15 小时前
15-2.【Linux系统编程】进程信号 - 信号保存(信号处理流程的三种状态:未决、阻塞、递达,信号保存由未决表完成、sigset_t信号集类型及相关函数)
linux·c++·后端·信号处理
喵个咪15 小时前
开箱即用的 GoWind Admin|风行,企业级前后端一体中后台框架:Makefile 在后端开发中的应用与 Windows 环境配置
后端·go
LaoZhangAI15 小时前
Gemini图像生成宽高比教程:10种比例完整配置指南【2025】
前端·后端
猫猫不是喵喵.15 小时前
使用poi通过word模板导出数据
后端
洛卡卡了15 小时前
活动玩法越堆越乱,我重构了一套事件驱动的活动系统
后端·面试·架构