maven私服搭建與使用教程

概述

在使用maven進行Java項目的開發過程中,難免會有些公共的私有庫,這些庫是不太方便放到中央倉庫的,可以通過Nexus搭建一個私有倉庫。

Nexus部署

下載安裝包

通過下載安裝包nexus-3.47.1-01-unix.tar.gz。

安裝

解壓安裝包

Nexus安裝非常簡單,隻需要解壓就可以瞭。假設安裝目錄為/opt/software/nexus

tar zxvf nexus-3.47.1-01-unix.tar.gz

解壓之後,在/opt/software/nexus目錄下,有2個目錄:

  • nexus-3.47.1-01:程序目錄,包含瞭 nexus運行需要的組件;
  • sonatype-work:數據目錄,包含瞭 nexus 管理的所有存儲庫、組件和其他數據。

啟動程序

執行如下命令,啟動nexus:

nexus-3.47.1-01/bin/nexus start

啟動之後,就可以使用。默認訪問地址為:http://localhost:8081/

安裝問題集錦

找不到jdk

執行啟動命令,找不到jdk。

No suitable Java Virtual Machine could be found on your system.
The version of the JVM must be 1.8.
Please define INSTALL4J_JAVA_HOME to point to a suitable JVM.

由於Nexus隻支持Java8,如果機器上的JDK版本高於8,則需要另外安裝下Java8,並通過配置環境變量INSTALL4J_JAVA_HOME來解決。環境變量如下:

# INSTALL4J_JAVA_HOME是Java8的JAVA_HOME
export INSTALL4J_JAVA_HOME='/opt/jdk1.8.0_202'

啟動後,8081端口打不開,無法訪問

確認下,服務器是否開啟瞭防火墻

默認密碼

Nexus的默認密碼放在${HOME}/sonatype-work/nexus/admin.password文件裡,我的就是/opt/software/nexus/sonatype-work/nexus/admin.password,通過如下命令,拿到密碼就可以登錄瞭

cat /opt/software/nexus/sonatype-work/nexus/admin.password

使用

從私服裡下載Jar

在需要下載私包的pom文件內,配置私服地址就可以瞭,具體如下:

<repositories>
  <repository>
    <!-- Maven 自帶的中央倉庫使用的Id為central 如果其他的倉庫聲明也是用該Id就會覆蓋中央倉庫的配置 -->
    <id>raina-releases</id>
    <layout>default</layout>
    <name>releases</name>
    <!-- 這裡的IP改成具體服務器IP -->
    <url>http://{$IP}:8081/nexus/content/repositories/releases</url>
  </repository>
</repositories>

發佈私包

配置Nexus密碼

在Maven的settings.xml裡(一般路徑為:${MVN_HOME}/conf/settings.xml),添加如下配置:

<server>
    <id>customNexus</id>
    <username>admin</username>
    <!-- admin的登錄密碼,使用默認密碼登錄後,會修改成自定義的密碼 -->
    <password>admin123</password>
</server>

pom.xml裡添加倉庫配置

在待發佈的項目pom.xml添加如下配置:

  <distributionManagement>
    <repository>
      <id>customNexus</id>
      <name>custom Nexus Release Repository</name>
      <!-- 這裡的IP改成具體服務器IP -->
      <url>http://{$IP}:8081/repository/maven-releases/</url>
      <layout>default</layout>
    </repository>
  </distributionManagement>

發佈

執行如下命令,則可以將私包發佈到私服瞭:

mvn clean deploy

發佈問題

如果包無法delopy,可以修改倉庫策略:

到此這篇關於maven私服搭建與使用的文章就介紹到這瞭,更多相關maven私服搭建內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: