教你一步一步搭建自己的maven私服
一、 應用場景
有些公司都不提供外網給項目組人員,因此就不能使用maven訪問遠程的倉庫地址,所以很有必要在局域網里找一台有外網權限的機器,搭建nexus私服,然后開發人員連到這台私服上,這樣的話就可以通過這台搭建了nexus私服的電腦訪問maven的遠程倉庫。
如果某個IP地址惡意的下載中央倉庫內容,例如全公司100台機器使用同一個IP反復下載,這個IP(甚至是IP段)會進入黑名單,因此稍有規模的使用Maven時,應該用Nexus架設私服。總歸主要是兩點:
1、自己maven私服更容易維護,公司開發從maven私服遷出jar到本地倉庫更快
2、有些公司未開放外網給開發人員
一、下載nexus
地址:https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.14.2-01-bundle.zip
二、啟動服務
解壓nexus-2.14.2-01-bundle.zip
在bin/jsw下有不同的版本,這里我選擇window 64位操作系統的版本。
console-nexus.bat 是以命令窗口的形式啟動,關閉后服務停止
install-nexus.bat 是設置開機啟動,在服務中可以看成到該服務為開機自動啟動(推薦使用這種方式啟動)
stop-nexus.bat 是停止服務
uninstall-nexus.bat 是卸載nexus
三、服務配置
啟動后輸入:http://localhost:8081/nexus 進入在右上角Login登錄,初始用戶名:admin 密碼:admin123 確定你的8081端口沒有被占用
1.配置參數,將Download Remote Indexes 設置為true
2、添加第三方jar包
2.1、選擇和填寫參數(groupId、artifactId、version)都要填寫
2.2、選擇上傳的jar包
3.坑來了 如果你不想每個jar包都手動上傳 添加到maven私服的話 這一步必做
四、項目調用方法
1、配置maven的settings.xml文件
1.1、設置jar包保存的本地目錄
1.2、設置你搭建的私服地址 注意要在節點mirrors里邊
<mirror> <id>central</id> <mirrorOf>*</mirrorOf> <!-- * 表示讓所有倉庫使用該鏡像--> <name>central-mirror</name> <url>http://192.168.1.73:8081/nexus/content/groups/public/</url> </mirror>
maven私服到這就搭建完成了 但是私服上的jar需要你一個一個手動添加 如果想自動將jar包和項目包發布到maven私服上 請繼續往下看
五、配置maven setting
1.在setting.xml文件中增加用戶名和密碼配置(特別注意這里的ID、要在server節點中)
<servers> <!-- 用於發布正式版本 --> <server> <id>maven-repository-releases</id> <username>admin</username> <password>admin123</password> </server> <!-- 用於發布快照版本 --> <server> <id>maven-repository-snapshots</id> <username>admin</username> <password>admin123</password> </server> </servers>
六、配置項目的pom.xml
1.注意要在 project節點中 注意這里有坑:上圖setting.xml中server節點的id是什么 下圖pom.xml中repository節點中的id就是什么
<distributionManagement> <repository> <!-- 這里的ID要和setting的id一致 --> <id>maven-repository-releases</id> <url>http://127.0.0.1:8081/nexus/content/repositories/thirdparty/</url> </repository> <!--這是打成快照版本的配置,如果不用這個snapshotRepository標簽,打包失敗,會報權限問題 --> <snapshotRepository> <id>maven-repository-snapshots</id> <url>http://127.0.0.1:8081/nexus/content/repositories/thirdparty</url> </snapshotRepository> </distributionManagement>
七、將項目發布到maven私服上
1.右鍵項目 run as → maven build 輸入deploy → run
可以看到 項目已經發布到我們搭建的maven中了。OK結束 如有問題歡迎評論或私信!