versions-maven-plugin插件批量修改版本號

1.簡介

versions-maven-plugin插件可以管理項目版本,
特別是當Maven工程項目中有大量子模塊時,
可以批量修改pom版本號,
插件會把父模塊更新到指定版本號,
然后更新子模塊版本號與父模塊相同,
可以避免手工大量修改和遺漏的問題。

2.使用

2.1.修改版本號

cmd進入Maven工程根目錄,運行命令:

mvn -f "pom.xml" versions:set -DoldVersion=* -DnewVersion=1.2.0-SNAPSHOT -DprocessAllModules=true -DallowSnapshots=true -DgenerateBackupPoms=true

修改成功后,全部模塊版本號都變成了1.2.0-SNAPSHAOT。

簡化版命令:

mvn versions:set -DnewVersion=1.2.0-SNAPSHOT

該命令和上一條命令等價,
個人推薦顯示的設置參數(shù),
方便后面修改參數(shù)。

2.2.回退版本號

mvn versions:revert

注意設置generateBackupPoms為true(默認值),
才會有pom.xml.versionsBackup備份文件,
否則沒有備份文件無法回退版本號。

或者使用版本管理工具提供的撤銷功能,
比如git直接回滾到原始版本:

git reset --hard origin/master

2.3.確認修改過的版本號

mvn versions:commit

查看修改后的pom文件,如果沒有問題則進行確認,
該命令會刪除修改版本號時生成的pom備份文件。

2.4.直接修改版本號,無需確認

設置generateBackupPoms為false,
則直接修改pom,不會生成備份文件,
也就不需要使用commit再次確認,
但是也無法使用revert命令回退版本號。

mvn versions:set -DnewVersion=1.2.0-SNAPSHOT -DgenerateBackupPoms=false

3.參數(shù)介紹

參數(shù) 默認值 說明
allowSnapshots false 是否更新-snapshot快照版
artifactId ${project.artifactId} 指定artifactId
generateBackupPoms true 是否生成備份文件用于回退版本號
groupId ${project.groupId} 指定groupId
newVersion 設置的新版本號
nextSnapshot false 更新版本號為下一個快照版本號
oldVersion ${project.version} 指定需要更新的版本號可以使用缺省'*'
processAllModules false 是否更新目錄下所有模塊無論是否聲明父子節(jié)點
processDependencies true 是否更新依賴其的版本號
processParent true 是否更新父節(jié)點的版本號
processPlugins true 是否更新插件中的版本號
processProject true 是否更新模塊自身的版本號
removeSnapshot false 移除snapshot快照版本,使之為release穩(wěn)定版
updateMatchingVersions true 是否更新在子模塊中顯式指定的匹配版本(如/項目/版本)

更多命令和使用方法,
請參考versions-maven-plugin官網(wǎng)說明。

4.使用技巧

為了更好的使用插件修改版本號,
減少不必要的版本號修改,
推薦Maven工程遵循如下規(guī)范:
1.同一項目中所有模塊版本保持一致
2.子模塊統(tǒng)一繼承父模塊的版本
3.統(tǒng)一在頂層模塊Pom的節(jié)中定義所有子模塊的依賴版本號,子模塊中添加依賴時不要添加版本號
4.開發(fā)測試階段使用SNAPSHOT
5.生產(chǎn)發(fā)布使用RELEASE
6.新版本迭代只修改父POM中的版本和子模塊依賴的父POM版本

5.參考文章

Versions maven plugin 修改版本
如何使用maven優(yōu)雅地管理項目版本號
versions-maven-plugin官網(wǎng)

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 道德經(jīng)里面有一段話是這么寫的,人法地,地法天,天法道、道法自然,人依悖地球而生存,地球繞著太陽運行,而產(chǎn)生四季變化...
    芊蓁中醫(yī)芳療閱讀 398評論 0 0
  • 今天,我媽媽準備做一個好吃的面包,媽媽把悶在袋子里好久的面粉倒出來,搭成了一個“面山”在盆子里。 我一邊用手拌面,...
    綠小喬木閱讀 701評論 0 1
  • 2018.1.18 周四 陰 上了老師的課程后,聽到朋友做雕刻時的索取的不勞而獲,心里立馬有個...
    陳2468_TA76課程閱讀 126評論 0 0

友情鏈接更多精彩內(nèi)容