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 🌎
相关推荐
vx_Biye_Design1 小时前
【关注可免费领取源码】云计算及其应用网络教学系统--毕设附源码35183
java·spring·spring cloud·servlet·eclipse·云计算·课程设计
码农阿豪7 小时前
Nacos 日志与 Raft 数据清理指南:如何安全释放磁盘空间
java·安全·nacos
直有两条腿8 小时前
【大模型】Langchain4j
java·langchain
love530love8 小时前
Scoop 完整迁移指南:从 C 盘到 D 盘的无缝切换
java·服务器·前端·人工智能·windows·scoop
消失的旧时光-19438 小时前
C++ 多线程与并发系统取向(二)—— 资源保护:std::mutex 与 RAII(类比 Java synchronized)
java·开发语言·c++·并发
莫寒清8 小时前
ThreadLocal
java·面试
学习是生活的调味剂9 小时前
spring bean循环依赖问题分析
java·后端·spring
Coder_Boy_10 小时前
Java(Spring AI)传统项目智能化改造——商业化真实案例(含完整核心代码+落地指南)
java·人工智能·spring boot·spring·微服务
五阿哥永琪10 小时前
1. 为什么java不能用is开头来做布尔值的参数名,会出现反序列化异常。
java·开发语言
chilavert31811 小时前
技术演进中的开发沉思-371:final 关键字(中)
java·前端·数据库