爲了團隊協作,搭建私服可以實現方便的共享
本文環境
本地系統:win10 pro
遠程服務器:Ubuntu18
使用私服框架:Nexus
1. 下載安裝包
下載地址:(下載linux版)
https://www.sonatype.com/download-nexus-repo-oss?hsCtaTracking=bde424ac-b77c-4799-913d-9d0db86ef1f8%7Cb308aaca-ab41-4544-ba23-c53c1b469e0d
需要登錄驗證,所以選擇先下載到本地再上傳到雲服務器。
本文通過winscp將文件傳到雲服務器。
2. 解壓文件
$ tar -zxvf nexus-3.19.1-01-unix.tar.gz
解壓後得到nexus-3.19.1-01
,sonatype-work
兩個文件
3. 開啓服務器
$ ./nexus start
打開與服務器的8081端口用於連接
4. 配置信息
本地系統登錄 訪問地址:http://ip:8081/nexus (IP換自己的)
登錄nexus,右上角Log In,
默認登錄用戶名:admin
密碼會存在服務器中,根據提示路徑尋找即可
登錄之後,我們可以點擊左邊菜單欄Repositories進入詳細配置
可以自己重新創建一個私服配置,這裏我們用系統在帶的Public Repositories
至此Nexus就搭建完了,剩餘的就是配置了
本地配置私服
1. setting.xml
在setting.xml中加入以下內容。
server 用於與 遠程的nexus 進行連接,(賬號密碼就是遠程nexus的)
mirror 是將本地的遠程服務器設爲 自己配置的nexus私服 (這樣所有本地沒有的包都會向私服進行請求,如果私服也沒有,私服會去向遠程倉庫請求)
<server>
<id>nexus-releases</id>
<username>(username)</username>
<password>(password)</password>
</server>
<mirror>
<id>nexus-releases</id>
<mirrorOf>central</mirrorOf>
<name>my nexus</name>
<url>http://ip:8081/repository/maven-public/</url>
</mirror>
2. 私服public repository
可以看到第一步中,我們 mirror
中代理的就是 maven-public
倉庫
在 maven-public
中的 url
即爲 mirror
中的 url
。
再看 maven-public
的組成員,
maven-releases/maven-snapshots,Type爲hosted,表示爲宿主倉庫。宿主倉庫主要用來部署團隊內部使用的內部組件
- releases 用於存放開發團隊內部用的正式版的依賴。
- snapshots 用於存放開發團隊內部日常構建的頻率更新較快的依賴包
maven-central,Type爲proxy,表示代理倉庫。代理倉庫用來代理遠程倉庫
- central 代理倉庫,去遠程請求私服沒有的包
我設置的是去請求阿里雲
更詳細的配置 (如上傳本地包)參見 https://www.jianshu.com/p/5c9b4a97f475
到此就可以在本地正常的使用maven了。 所有的本地請求都會通過私服。