一抱环、為什么需要搭建mave私服
如果沒有私服,我們所需的所有構(gòu)件都需要通過maven的中央倉(cāng)庫(kù)和第三方的Maven倉(cāng)庫(kù)下載到本地芍阎,而一個(gè)團(tuán)隊(duì)中的所有人都重復(fù)的從maven倉(cāng)庫(kù)下 載構(gòu)件無(wú)疑加大了倉(cāng)庫(kù)的負(fù)載和浪費(fèi)了外網(wǎng)帶寬席赂,如果網(wǎng)速慢的話裕循,還會(huì)影響項(xiàng)目的進(jìn)程。很多情況下項(xiàng)目的開發(fā)都是在內(nèi)網(wǎng)進(jìn)行的娇昙,連接不到maven倉(cāng)庫(kù)怎么 辦呢尺迂?開發(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)件。
二股毫、Nexus下載
下載地址:http://www.sonatype.org/nexus/go
這里使用的是nexus-2.11.2-03的版本
三膳音、解壓下載的Nexus
使用tar命令進(jìn)行解壓 tar -zxvf nexus-2.11.2-03-bundle.tar.gz,解壓進(jìn)入到nexus-2.11.3-03中使用使用命令ls铃诬,進(jìn)行查看目錄結(jié)構(gòu)祭陷。
conf:配置目錄
lib:包目錄
logs:日志目錄
nexus:web應(yīng)用目錄
tmp:臨時(shí)文件目錄```
#四、配置當(dāng)前訪問的端口和用戶
1.進(jìn)入到/nexus-2.11.2-03/bin目錄下氧急。使用vi命令開打nexus. "vi nexus"颗胡,增加RUN_AS_USER =ROOT 顯示如圖:
![4-1.jpg](http://upload-images.jianshu.io/upload_images/3047136-1ac0b0778cfed703.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
2.配置端口,進(jìn)入到/nexus-2.11.2-03/bin目錄下吩坝,使用VI打開nexus.properties文件毒姨。如圖
nexus 是使用jetty容器進(jìn)行啟動(dòng)的。默認(rèn)的端口為8081.若端口沒有被暫用的情況下默認(rèn)使用8081.
![4-2.jpg](http://upload-images.jianshu.io/upload_images/3047136-355a550a84b53f76.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
#五钉寝、設(shè)置防火墻
如果有啟用防火墻的情況下需要供其他用戶進(jìn)行訪問的情況下弧呐,配置防火墻闸迷。
1.對(duì)iptables進(jìn)行編輯,使用vi 命令進(jìn)行打開俘枫⌒裙粒“vi etc/sysconfig/iptables”
2.對(duì)iptables 插入 -A INPUT -m state --state NEW -m tcp -p tcp --dport 8081 -j ACCEPT
3.使用命令重啟防火墻. service iptables restart
![5-1.jpg](http://upload-images.jianshu.io/upload_images/3047136-3cd761b88a9aea72.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
#六、啟動(dòng)nexus
進(jìn)入到nexus的bin目錄下鸠蚪。使用sh命令進(jìn)行啟動(dòng).
```[root@instance-9j07wgiz nexus-2.11.2-03]# cd bin/
[root@instance-9j07wgiz bin]# ls
jsw nexus nexus.bat
[root@instance-9j07wgiz bin]# pwd
/u01/nexus/nexus-2.11.2-03/bin
[root@instance-9j07wgiz bin]# sh nexus start```
#七今阳、在項(xiàng)目中的pom進(jìn)行修改倉(cāng)庫(kù)。
1茅信、配置jar包倉(cāng)庫(kù)
<repositories>
<repository>
<id>nexus</id>
<name>nexus</name>
<url>http://192.168.1.103:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories> ```
2盾舌、插件配置使用私有maven庫(kù)
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>nexus</name>
<url>http://192.168.1.103:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>