1 需求說明
開發完項目后, 將項目版本發布到Nexus私服中.
2 實現步驟
2.1 Maven服務的setting.xml文件
(1) 如果本機安裝了Maven服務, 可在${MAVEN_HOME}/conf/setting.xml
中指定私服相關的配置:
<!-- 在servers標簽下配置server, 包括: 私服的用戶名和密碼, 在deploy項目時需要用到 -->
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
<!-- 在profiles標簽下配置profile, 包括: 私服所配的倉庫、各個插件的倉庫地址 -->
<profile>
<!-- profile的id -->
<id>dev</id>
<repositories>
<repository>
<!-- 倉庫id, Repositories可以配置多個倉庫, 要確保id不重復 -->
<id>nexus</id>
<!-- 倉庫地址, 即nexus倉庫組的地址 -->
<url>http://ip:port/nexus/content/groups/public/</url>
<!-- 是否下載Releases構件 -->
<releases>
<enabled>true</enabled>
</releases>
<!-- 是否下載Snapshots構件 -->
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<!-- 插件倉庫, Maven的運行依賴插件, 也需要從私服下載插件 -->
<pluginRepository>
<!-- 插件倉庫的id不允許重復, 如果重復, 后配置的優先 -->
<id>public</id>
<name>Public Repositories</name>
<url>http://ip:port/nexus/content/groups/public/</url>
</pluginRepository>
</pluginRepositories>
</profile>
<!-- 還需指定聯網倉庫, 保證本私服中沒有相關jar包或插件時可聯網獲取 -->
<profile>
<id>internet</id>
<repositories>
<repository>
<id>nexus-aliyun</id>
<name>Nexus aliyun</name>
<layout>default</layout>
<!-- 這里配置阿里雲的倉庫 -->
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
</profile>
(2) 如果本機沒有安裝Maven服務, 可在IDEA或Eclipse等開發環境默認使用的Maven配置中修改, 修改內容同上.
2.2 項目的pom.xml文件
在項目的pom.xml
中的一級標簽project下添加如下內容:
<!-- 發布選項: id必須與setting.xml文件中server的id相同 -->
<distributionManagement>
<repository>
<id>releases</id>
<name>display</name>
<url>http://ip:port/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>display</name>
<url>http://ip:port/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
2.3 發布項目
以IDEA為例, 選中項目, 右鍵 -> Run Maven -> deploy
,
或者在右邊欄選中Maven欄目, 點擊項目 -> Lifecycle -> deploy
, 執行即可將項目發布到倉庫中去.
注意: 倉庫中不能存在與當前項目名稱+版本號相同的項目, 否則將導致出錯: Bad Request: 400
.
版權聲明
作者: 馬瘦風
出處: 博客園 馬瘦風的博客
感謝閱讀, 如果文章有幫助或啟發到你, 點個[好文要頂👆] 或 [推薦👍] 吧😜
本文版權歸博主所有, 歡迎轉載, 但 [必須在文章頁面明顯位置給出原文鏈接], 否則博主保留追究相關人員法律責任的權利.