您好,登錄后才能下訂單哦!
這篇文章給大家介紹利用maven怎么動態修改版本號,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
注:env.project.version為自定參數變量,env為dev或者test
1、在maven項目的父級pom設置變量,形如下
<groupId>org.example</groupId> <artifactId>demo-parent</artifactId> <packaging>pom</packaging> <version>${env.project.version}</version> <properties> <env.project.version>1.0-SNAPSHOT</env.project.version> </properties>
2、修改其子模塊pom
<parent> <artifactId>demo-parent</artifactId> <groupId>org.example</groupId> <version>${env.project.version}</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>module-biz</artifactId>
<parent> <artifactId>demo-parent</artifactId> <groupId>org.example</groupId> <version>${env.project.version}</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>module-api</artifactId>
3、執行如下命令
mvn clean package -Denv.project.version=1.0-dev -DskipTests
如果要打包發布到私有倉庫,則執行
mvn clean deploy-Denv.project.version=1.0-dev -DskipTests
4、驗證
從截圖,可以看出達到預期的效果
1、在maven項目的父級pom設置變量,并添加profile,形如下
<properties> <env.project.version>1.0-SNAPSHOT</env.project.version> </properties> <profiles> <profile> <id>dev</id> <properties> <env.project.version>1.0-dev</env.project.version> </properties> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>test</id> <properties> <env.project.version>1.0-test</env.project.version> </properties> </profile> </profiles>
2、修改其子模塊pom
<parent> <artifactId>demo-parent</artifactId> <groupId>org.example</groupId> <version>${env.project.version}</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>module-biz</artifactId>
<parent> <artifactId>demo-parent</artifactId> <groupId>org.example</groupId> <version>${env.project.version}</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>module-api</artifactId>
3、執行如下命令
mvn clean package -Ptest -DskipTests
如果要打包發布到私有倉庫,則執行
mvn clean deploy -Ptest -DskipTests
注:不指定-P默認為dev
4、驗證
從截圖,可以看出達到預期的效果
注:使用該命令,項目無需做任何變動。
直接執行命令
mvn versions:set -DnewVersion=1.0-dev
如果要發布到私倉,此時要分兩次命令執行,命令如下
mvn versions:set -DnewVersion=1.0-dev mvn clean deploy -DskipTests
此時查看idea,會發現
項目版本號已經發生改變,且產生一個pom.xml.versionsBackup文件,這個文件是用來回退版本用的,其內容如下
如果確認沒問題,則可以執行你本來要操作的步驟,比如打包或者發布,形如下命令
mvn clean package/deploy -DskipTests
從截圖,可以看出達到預期的效果
如果有問題想回退版本,則執行
mvn versions:revert
進行回退。不過能成功執行該步驟的前提是沒有執行
mvn versions:commit
且存在pom.xml.versionsBackup文件文件
如果不想產生pom.xml.versionsBackup文件,則可以在父pom配置如下插件
<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>versions-maven-plugin</artifactId> <version>2.8.1</version> <configuration> <generateBackupPoms>false</generateBackupPoms> </configuration> </plugin> </plugins> </build>
指定generateBackupPoms為false
參數介紹
關于利用maven怎么動態修改版本號就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。