日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Sonatype Nexus搭建Maven私服

作者:乘著清風寫程序 更新時間: 2022-07-11 編程語言

1. 概述

私服就是企業搭建供內部使用的一個Maven倉庫,實現企業內部依賴的共享,具有降低中央倉庫負荷、節省外網寬帶和提高項目穩定性等優點。實際開發中服務器不能訪問公網,可以通過一臺能訪問外網的服務器作為代理服務器下載需要的依賴。Nexus是Sonatype公司發布的一款倉庫管理軟件,常用于搭建Maven私服。更多詳情,可以訪問官網
nexus官網

2. 環境要求

Nexus依賴于Java8,所以需要提前搭建好Java環境,CPU數最低為4
CPU要求
內存最低要求8GB
內存要求

3. 安裝Nexus

3.1. 下載安裝包

從官網下載最新安裝包
下載安裝包
選擇適合的版本,點擊下載鏈接即可,注意下載速度很慢,可以通過專門下載工具進行快速下載

3.2. 解壓

將下載的安裝壓縮包解壓到指定目錄,如果是Linux服務器安裝,需要先將壓縮包上傳到服務器目錄再解壓,解壓后目錄如下:
解壓后目錄
nexus-3.38.1-01:包含Nexus運行所需的文件以及所有必需的其他組件,如啟動腳本、依賴jar包等
sonatype-work:包含由Nexus存儲和管理的倉庫、組件和其他數據

3.3. 啟動Nexus

進入nexus-3.38.1-01/bin目錄下,執行./nexus start命令啟動Nexus
啟動Nexus
執行./nexus status可以查看啟動狀態
啟動狀態
使用netstat -anp | grep java命令查看端口占用情況,可以看到8081端口
在Windows環境中,在bin目錄下執行nexus /run啟動Nexus
啟動nexus

3.4. 訪問Nexus首頁

瀏覽器地址輸入http://ip:8081,初始化界面如下
初始化界面
初始化完成后,進入首頁
首頁

3.5. 初始設置

點擊右上角Sign in
登陸
輸入用戶名/密碼,默認用戶名是admin,默認密碼如提示的/sonatype-work/nexus3/admin.password
setup
直接點擊Next,進入下一步
修改密碼
輸入新密碼,點擊Next,進入下一步
禁用匿名訪問
勾選禁用匿名訪問選項,點擊Next,進入下一步
Finish
點擊Finish即可
登陸后的界面如下
登陸后首頁

4. Maven項目接入Nexus

4.1. 通過Nexus下載jar包

maven庫
倉庫類型說明
proxy:某個遠程倉庫代理
group:存放通過Nexus獲取的第三方jar包
hosted:存放本團隊開發人員部署到Nexus的jar包
倉庫名稱說明
maven-central:Nexus對Maven中央倉庫代理
maven-public:Nexus默認創建,供開發人員下載使用的組倉庫
maven-releases:Nexus默認創建,供開發人員部署jar包的宿主倉庫要求release版本
maven-snapshots:Nexus默認創建,供開發人員部署jar包的宿主倉庫要求snapshots版本
初始狀態時,以上幾個倉庫都沒有依賴
空倉庫
使用本地Maven空倉庫

<localRepository>E:\Java\repository-3.8.5</localRepository>

在mirrors標簽中添加Nexus庫

<mirror>
	<id>nexus-mine</id>
	<mirrorOf>central</mirrorOf>
	<name>Nexus mine</name>
	<url>http://xx.xx.xx.xx:8081/repository/maven-public/</url>
</mirror>

在servers標簽配置用戶信息

<server>
	<id>nexus-mine</id>
	<username>admin</username>
	<password>123456</password>
</server>

注意:server標簽的id標簽值必須與mirror標簽的id標簽值一致
在maven項目中執行mvn clean compile命令,下載依賴后,Nexus服務器就有jar包
nexus倉庫依賴

4.2. 將jar包部署到Nexus

在maven項目中配置如下信息

<distributionManagement>
    <snapshotRepository>
        <id>nexus-mine</id>
        <name>Nexus Snapshot</name>
        <url>http://xx.xx.xx.xx:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
</distributionManagement>

snapshotRepository 的 id 標簽也必須和 settings.xml 中指定的 mirror 標簽的 id 屬性一致
執行部署命令

mvn deploy

下載依賴
查看Nexus服務器上maven-snapshots倉庫
上傳依賴

4.3. 引用他人部署的jar包

在maven項目中引入如下配置

<repositories>
    <repository>
        <id>nexus-mine</id>
        <name>Nexus Snapshot</name>
        <url>http://xx.xx.xx.xx:8081/repository/maven-snapshots/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <releases>
            <enabled>true</enabled>
        </releases>
    </repository>
</repositories>

4.4. 修改Nexus倉庫配置

Nexus的遠程倉庫默認為中央倉庫,訪問較慢,可以修改為國內的阿里云倉庫
修改倉庫
點擊進入,修改遠程中央倉庫配置
修改遠程倉庫地址

4.5. 上傳jar依賴

對于不能從中央倉庫獲取的第三方依賴,可以直接上傳到Nexus私庫
上傳jar到nexus
選擇maven-releases倉庫進入,選擇需要上傳的jar包
上傳jar依賴

原文鏈接:https://blog.csdn.net/liu320yj/article/details/124915298

欄目分類
最近更新