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 🌎
相关推荐
猿java4 分钟前
什么是Nginx?它有哪些应用场景?
java·nginx·面试
DBWYX8 分钟前
redis
java·redis·mybatis
mask哥9 分钟前
实用的java技术架构组件汇总
java·spring·微服务·springboot·vo校验·常用java组件
不穿铠甲的穿山甲21 分钟前
gradle-tasks.register(‘classesJar‘, Jar)解析
android·java·gradle·groovy
学了就忘33 分钟前
Axios 传参与 Spring Boot 接收参数完全指南
java·spring boot·后端·vue
漂流瓶66666641 分钟前
如何在idea中写spark程序
java·spark·intellij-idea
冼紫菜43 分钟前
[特殊字符] SpringCloud项目中使用OpenFeign进行微服务远程调用详解(含连接池与日志配置)
java·后端·spring cloud
oioihoii1 小时前
C++23文本编码革新:迈向更现代的字符处理
java·数据库·c++23
Seven971 小时前
记录一次线上问题排查:JDK序列化问题
java
风象南1 小时前
SpringBoot中4种登录验证码实现方案
java·spring boot·后端