Maven 插件统一修改聚合工程项目版本号

目录

引言

在Maven项目中,我们通常有两种常见的方式来修改版本号:直接在pom.xml文件中手动编辑和利用Maven插件进行版本号调整。

本文将比较这两种修改版本号的方式,讨论它们各自的优劣,以及在不同情境下的适用性。

直接修改 pom.xml 的版本号的问题

在单体项目中,我们可以直接编辑pom.xml文件修改版本号,而且修改会立即生效。

然而,在微服务或聚合工程中,由于存在模块间的依赖关系,直接修改pom.xml的版本号可能导致一致性问题。

这里拿 youlai-mall 微服务做示例:

可以看到修改父工程的版本号,并未改变子工程依赖的父工程的版本号,导致子工程的依赖报错。

Maven 插件修改版本号

bash 复制代码
mvn versions:set -DnewVersion='3.0.1'

在使用mvn versions:set命令设置新版本后,你需要使用mvn versions:commit来将这个版本修改应用到项目的POM文件中。

bash 复制代码
mvn versions:commit

如果有问题,回退版本即可

bash 复制代码
mvn versions:revert

开源项目

微服务商城项目

Github Gitee
开源组织 有来开源组织 有来开源组织
后端 youlai-mall 📖 youlai-mall 📖
前端 mall-admin🌎 mall-admin 🌎
移动端 mall-app 🌎 mall-app 🌎

前后端分离项目

Github Gitee
开源组织 有来开源组织 有来开源组织
后端 youlai-boot 📖 youlai-boot 📖
前端 vue3-element-admin 🌎 vue3-element-admin 🌎
相关推荐
软萌萌的112 小时前
Java Spring Boot 修改yml配置&加载顺序规则
java·spring boot·python
IT小盘13 小时前
13-企业Prompt模板-角色任务约束与输出格式
java·前端·prompt
爱敲键盘的猴子13 小时前
Java并发编程 -- volatile
java·java并发
plainGeekDev15 小时前
工厂模式 → Hilt
android·java·kotlin
plainGeekDev15 小时前
Application 单例 → Hilt Singleton
android·java·kotlin
888CC++15 小时前
C语言与C++的区别:从面向过程到面向对象
java·c语言·c++
学者猫头鹰16 小时前
分布式事务实战教程
java·分布式
heimeiyingwang17 小时前
【架构实战】Kubernetes调度器深度剖析:从Pod调度到自定义调度器
java·架构·kubernetes
纳兰青华18 小时前
回文侦探:三种境界破解最长回文子串
java·算法·动态规划
Zane199419 小时前
CAS 与原子类:Java 如何实现无锁编程
java·后端