maven中的倉庫分為兩種,snapshot快照倉庫和release發布倉庫。snapshot快照倉庫用於保存開發過程中的不穩定版本,release正式倉庫則是用來保存穩定的發行版本。定義一個組件/模塊為快照版本,只需要在pom文件中在該模塊的版本號后加上-SNAPSHOT即可(注意這里必須是大寫)。
pom文件內容如下:
<groupId>org.learn.maven</groupId>
<artifactId>mavenweb</artifactId>
<version>1.0-SNAPSHOT</version>
那么將本地的Maven項目上傳至私服對應的倉庫中呢?
nexus私服中我們可以看到有兩種倉庫一個是maven-releases,另一個是maven-snapshots正好與之對應,我們可以通過配置將項目發布至相應的倉庫中
pom.xml文件增加配置
<!--定義snapshots庫和releases庫的nexus地址-->
<distributionManagement>
<repository>
<id>maven-releases</id>
<url>
http://localhost:8081/repository/maven-releases/
</url>
</repository>
<snapshotRepository>
<id>maven-snapshots</id>
<url>
http://localhost:8081/repository/maven-snapshots/
</url>
</snapshotRepository>
</distributionManagement>
配置的url是我們nexus中對應的倉庫的url.
配置setting.xml文件,添加上傳構建到nexus私服中的賬號和密碼,如果不配置我們將沒有權限上傳至私服中
<servers>
<server>
<id>maven-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>maven-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
使用Maven的deploy命令上傳項目
控制台成功輸出信息,我們這時再到nexus中查看上傳的項目
上傳完成,因為我們pom文件中項目的版本是1.0-SNAPSHOT,所以項目就上傳至maven-snapshot目錄中,如果設置的是1.0-RELEASE 則上傳至maven-release目錄中。
