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>会产生

相关推荐
驰羽7 小时前
[GO]什么是热重载,如何使用Air工具
开发语言·后端·golang
SirLancelot17 小时前
MongoDB-基本介绍(一)基本概念、特点、适用场景、技术选型
java·数据库·分布式·后端·mongodb·软件工程·软件构建
程序员小凯8 小时前
Spring Boot消息队列与事件驱动详解
java·spring boot·后端
BUG弄潮儿9 小时前
go-swagger标准接口暴露
开发语言·后端·golang
阑梦清川9 小时前
linux系统jdk&&mysql配置
后端
i学长的猫9 小时前
Spring Boot 布隆过滤器最佳实践指南
spring boot·后端·哈希算法
Mr_hwt_1239 小时前
spring boot框架中本地缓存@Cacheable原理与踩坑点详细解析
java·spring boot·后端·缓存
qq_339191149 小时前
go win安装grpc-gen-go插件
开发语言·后端·golang
iCoding9110 小时前
前端分页 vs 后端分页:技术选型
前端·后端·系统架构
王中阳Go背后的男人10 小时前
我发现不管是Java还是Golang,懂AI之后,是真吃香!
后端