1. 程式人生 > >Maven倉庫之release版本和snapshot版本

Maven倉庫之release版本和snapshot版本

maven中的倉庫分為兩種,snapshot快照倉庫和release釋出倉庫。

snapshot快照倉庫用於儲存開發過程中的不穩定版 本,release正式倉庫則是用來儲存穩定的發行版本。

定義一個元件/模組為快照版本,只需要在pom檔案中在該模組的版本號後加上-SNAPSHOT即可(注意這裡必須是大寫)。

release版本不允許修改,每次進行release版本修改,釋出必須提升版本號。因為不更改版本號,即便部署到私服上了,更新maven也不會有任何作用的。換言之,就算你的程式碼和私服上的內容不一樣,它也不會更新下來,只有換了版本號重新拉取。

而snapshot一般是開發過程中的迭代版本,snapshot更新後,引用的專案可以不修改版本號自動下載構建。

所以,我們在開發階段,可以將公用庫的版本設定為快照版本,而被依賴元件則引用快照版本進行開發,在公用庫的快照版本更新後,我們也不需要修改pom檔案提示版本號來下載新的版本,直接mvn執行相關編譯、打包命令即可重新下載最新的快照庫了,從而也方便了我們進行開發,也不衝突MAVEN的版本管理原則。例如:

        <dependency>
            <groupId>com.xxx.yyy</groupId>
            <artifactId>xxxxxxx</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>