maven版本控制實現自動化管理JAR
阿新 • • 發佈:2019-01-22
解決maven deploy可生成版本號帶最新時間戳的問題
解決專案自動化管理(reimport)JAR下載私服上最新版本的JAR的問題
/**
*@Author: ludezh
*@Remark: 純屬個人實戰建議和經驗
**/
關於maven版本規劃建議(利於開發時自動化管理jar):
一、開發版/測試版:
1.採用maven 生成SNAPSHOT(快照)方式
如:
a專案pom.xml配置:
<modelVersion>4.0.0</modelVersion>
<groupId>com.ching</groupId >
<artifactId>jee-a</artifactId>
<version>1.0.2-SNAPSHOT</version>
<packaging>jar</packaging>
<!-- 配置上傳私服地址,注意上傳時repository的id對應的是setting.xml的server的id,否則報401錯誤-->
<distributionManagement>
<repository>
<id> releases</id>
<name>core Release Repository</name>
<url>http://127.0.0.1(私服ip):8081/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>Snapshots</id>
<name>core Snapshots Repository</name >
<url>http://127.0.0.1(私服ip):8081/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
2.採用maven 引入快照版本的方式
如:
b專案pom.xml配置:
<dependencies>
<dependency>
<groupId>com.ching</groupId>
<artifactId>jeezz-adna</artifactId>
<version>1.0.2-SNAPSHOT</version>
</dependency>
</dependencies>
<!--PS:配置快照面板地址的,也可在setting.xml進行全域性配置-->
<repository>
<id>Snapshot</id>
<name>snapshot</name>
<url>http://127.0.0.1(私服):8081/nexus/content/repositories/snapshot/</url>
<!-- 配置快照下載更新方式:always -->
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</repository>
二、生產版(純屬個人建議):
當確定該版本號為生產環境(即版本上線),將a專案的<version></version>中-SNAPSHOT去掉,並執行maven deploy上傳至私服穩定版面板地址
三、疑惑:
當配置<version>1.0.2-SNAPSHOT</version>時maven會自動識別為快照版本從而上傳至配置好的私服快照版地址
當沒有-SNAPSHOT時則預設上傳至私服穩定版地址