1. 程式人生 > >CentOS7搭建nexus 3.13.0-01私服

CentOS7搭建nexus 3.13.0-01私服

1、下載

訪問官網:https://www.sonatype.com/ 點選product->選擇免費版OSS,如圖: 在這裡插入圖片描述 點選如圖按鈕: 在這裡插入圖片描述 這裡選擇UNIX版本,如圖,點選即可開始下載: 在這裡插入圖片描述

2、安裝

  1. 解壓
tar -zvxf nexus-3.13.0-01-unix.tar.gz
  1. 進入etc目錄修改基本配置,一般是修改埠配置,這裡採用預設8081 在這裡插入圖片描述

  2. 進入bin目錄啟動,注意此版本啟動需要jdk1.8+

./nexus start

顯示 Starting nexus即可

  1. 訪問 瀏覽器輸入:http://xx.xx.xx.xx:8081/ 即可,如果剛啟動,暫時訪問不了,稍等一會再進行訪問,訪問介面如圖: 在這裡插入圖片描述

3、新增proxy倉庫和hosted倉庫

  1. 登入,預設使用者名稱密碼:admin\admin123 如需修改密碼,點選如圖進行操作即可: 在這裡插入圖片描述
  2. 如圖所示,紅線框中的倉庫是本身就配置好的,他們的含義很簡單,網上查詢一下即可,需要留意的是maven-public,它關係著從列表中哪些倉庫下載,以及先從哪個倉庫下載的順序: 在這裡插入圖片描述
  3. 新建3rdPart倉庫,用來儲存maven倉庫無法下載到的資源,如連線oracle資料庫所需jar包: 在這裡插入圖片描述 在這裡插入圖片描述 在這裡插入圖片描述 點選Create repository即可

在這裡插入圖片描述 配置紅線框中的兩項即可,其他預設,點選最下面Create repository即可

  1. 還有重要的一步,需要將新增的倉庫新增進maven-public,並調整下載順序,否則是不會先從新增的倉庫中嘗試下載
    在這裡插入圖片描述 通過框線中按鈕,進行新增並調整順序,如圖: 在這裡插入圖片描述

4、實現專案釋出到私服對應倉庫

  1. 首先需要配置setting檔案 找到使用者目錄下.m2資料夾(注意配置maven根目錄下的setting.xml檔案是全域性配置,會影響所有使用者的使用,我們一般配置某使用者的setting.xml即可),修改setting.xml,如果沒有從maven中複製過來一個,新增一下內容: 在這裡插入圖片描述
<server>
        <id>nexus-releases</id>
        <username>admin</username>
        <password>xxxx</password>
    </server>
    <server>
        <id>nexus-snapshots</id>
        <username>admin</username>
        <password>xxxx</password>
    </server>

id隨意,使用者名稱密碼是以私服的使用者名稱密碼 2. pom.xml檔案配置 建立了一個測試demo,如圖,在pom.xml中新增如下內容: 在這裡插入圖片描述 注意這的id和setting.xml中server配置的id必須相同

<distributionManagement>
        <repository>
            <id>nexus-releases</id>
            <name>Releases</name>
            <url>http://xx.xx.xx.xx:8081/repository/maven-releases/</url>
        </repository>
        <snapshotRepository>
            <id>nexus-snapshots</id>
            <name>Snapshot</name>
            <url>http://xx.xx.xx.xx:8081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>
  1. 此時執行命令
mvn clean deploy

執行成功後,登入私服檢視,由於專案版本是snapshots,所有會發布到maven-snapshots中,通過檢視,可以看出已經部署到了該倉庫,如下圖: 在這裡插入圖片描述

5、實現從私服中下載資源

有兩種方式:

  1. 配置mirror,可以在setting中新增如下內容: url是maven-public倉庫的訪問地址
 <mirror>
		<id>nexus</id>
		<mirrorOf>*</mirrorOf>
		<url>http://xx.xx.xx.xx:8081/repository/maven-public/</url>
	</mirror>

在這裡插入圖片描述 2. 配置profile

<profile>  
      <id>dev</id>
      <repositories>
        <repository>
          <id>Nexus</id>
          <url>http://xx.xx.xx.xx:8081/repository/maven-public/</url> 
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
      </repositories>
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>dev</activeProfile>
 </activeProfiles>
  1. 測試是否從倉庫下載,以及倉庫下載順序 還是使用前面的測試demo專案,刪除本地倉庫中dom4j,點選maven中reimport,當下載好的時候,登入私服檢視是否aliyun-proxy下載了相應的資源,如圖: 在這裡插入圖片描述 可以看到,已經私服中已經下載相應資源,並且在aliyun-proxy優先下載