1. 為什么使用Nexus?
如果沒有私服,我們所需的所有構(gòu)件都需要通過maven的中央倉庫和第三方的Maven倉庫下載到本地棺克,而一個(gè)團(tuán)隊(duì)中的所有人都重復(fù)的從maven倉庫下載構(gòu)件無疑加大了倉庫的負(fù)載和浪費(fèi)了外網(wǎng)帶寬,如果網(wǎng)速慢的話线定,還會(huì)影響項(xiàng)目的進(jìn)程娜谊。很多情況下項(xiàng)目的開發(fā)都是在內(nèi)網(wǎng)進(jìn)行的,連接不到maven倉庫怎么辦呢斤讥?開發(fā)的公共構(gòu)件怎么讓其它項(xiàng)目使用纱皆?這個(gè)時(shí)候我們不得不為自己的團(tuán)隊(duì)搭建屬于自己的maven私服,這樣既節(jié)省了網(wǎng)絡(luò)帶寬也會(huì)加速項(xiàng)目搭建的進(jìn)程芭商,當(dāng)然前提條件就是你的私服中擁有項(xiàng)目所需的所有構(gòu)件派草。
總體來說,使用私服具有以下的好處:
- 節(jié)省外網(wǎng)帶寬
- 加速M(fèi)aven構(gòu)建铛楣,提高效率
- 內(nèi)部部署構(gòu)件
- 靈活的安全和權(quán)限管理
- 其他優(yōu)勢
2. Nexus簡介
Nexus是一個(gè)強(qiáng)大的Maven倉庫管理器近迁,它極大地簡化了自己內(nèi)部倉庫的維護(hù)和外部倉庫的訪問。利用Nexus你可以只在一個(gè)地方就能夠完全控制訪問 和部署在你所維護(hù)倉庫中的每個(gè)Artifact簸州。Nexus是一套“開箱即用”的系統(tǒng)不需要數(shù)據(jù)庫鉴竭,它使用文件系統(tǒng)加Lucene來組織數(shù)據(jù)。Nexus 使用ExtJS來開發(fā)界面勿侯,利用Restlet來提供完整的REST APIs拓瞪,通過m2eclipse與Eclipse集成使用。Nexus支持WebDAV與LDAP安全身份認(rèn)證助琐。
3. Nexus安裝和啟動(dòng)
3.1 下載
nexus 下載地址
此處我用的nexus-3.2.0-01版本祭埂,nexus3與nexus2差別挺大,盡量選擇新版本兵钮。
3.2 環(huán)境要求
- jdk1.8+
- maven3
3.3 安裝
Nexus3.x是免安裝的蛆橡,下載之后解壓到一個(gè)文件夾中。至此掘譬,下載安裝完成泰演。
3.4 目錄簡介
"nexus-3.2.0-01":Nexus3.x的安裝文件目錄,
“sonatype-work”:Nexus3.x的工作(或稱之為數(shù)據(jù))目錄葱轩。
和以往不同的是睦焕,若想修改Nexus自帶的Jetty容器的服務(wù)端口藐握,需要修改“nexus_home\sonatype-work\nexus3\etc”目錄下的“nexus.properties”配置文件,修改其中的端口即可垃喊。默認(rèn)端口為:8081猾普,但是通常該端口可能已經(jīng)被占用,從而出現(xiàn)JettyServer Failed to Start的錯(cuò)誤本谜,拋出地址已經(jīng)被占用的異常初家,無法綁定,從而導(dǎo)致錯(cuò)誤乌助。
3.4 啟動(dòng)
雖然在“nexus_home\nexus\nexus-3.2.0-01\bin”目錄下存在nexus.exe的可執(zhí)行程序溜在,但是雙擊程序或者右鍵使用管理員運(yùn)行,都不能啟動(dòng)Nexus的服務(wù)他托。正確的打開姿勢是:通過命令行運(yùn)行掖肋。
步驟如下:
3.4.1 Win+R,輸入cmd回車上祈,打開命令提示符窗口培遵,一定需要管理員權(quán)限浙芙!
一路cd命令登刺,進(jìn)入“nexus_home\nexus\nexus-3.2.0-01\bin”目錄。
執(zhí)行
nexus.exe /run
4. Nexus登錄
訪問地址為:http://localhost:8081
Nexus的默認(rèn)服務(wù)端口為8081嗡呼,默認(rèn)的用戶名是:admin纸俭,密碼:admin123。
點(diǎn)擊右上角的Sign in按鈕南窗,輸入用戶名和密碼揍很,進(jìn)入倉庫管理系統(tǒng)。
在此處查看對(duì)應(yīng)的倉庫配置: