Maven發佈項目到Nexus私服中 (發佈jar包)

1 需求說明

開發完項目後, 將項目版本發佈到Nexus私服中.java

2 實現步驟

2.1 Maven服務的setting.xml文件

(1) 若是本機安裝了Maven服務, 可在${MAVEN_HOME}/conf/setting.xml中指定私服相關的配置:maven

<!-- 在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配置中修改, 修改內容同上.this

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, 執行便可將項目發佈到倉庫中去.url

注意: 倉庫中不能存在與當前項目名稱+版本號相同的項目, 不然將致使出錯: Bad Request: 400.插件

版權聲明

做者: 馬瘦風code

出處: 博客園 馬瘦風的博客server

感謝閱讀, 若是文章有幫助或啓發到你, 點個[好文要頂👆] 或 [推薦👍] 吧😜xml

本文版權歸博主全部, 歡迎轉載, 但 [必須在文章頁面明顯位置給出原文連接], 不然博主保留追究相關人員法律責任的權利.

相關文章
相關標籤/搜索