背景:mysql
私服:私有服務器,是公司內部Maven項目常常用到的私有倉庫。Nexus就是一款經常使用的私用Maven服務器,通常是公司內部使用。spring
下載地址是:http://www.sonatype.org/nexus/go 默認本地地址: http://localhost:8081/nexus/sql
默認登陸帳號:admin/admin123 登陸後爲安全起見,可自行修改賬號。目前選擇版本:nexus-2.8.0-05。安全
做用:服務器
Nexus經常使用功能:指定私服的中央地址、將本身的Maven項目指定到私服地址、從私服下載中央庫的項目索引、從私服倉庫下載依賴組件、將第三方項目jar上傳到私服供其餘項目組使用。oracle
本地開啓Nexus服務後訪問url地址http://localhost:8081/nexus/,登陸後就能夠訪問Nexus了。maven
通常用戶訪問最爲頻繁的就是左側菜單欄的Repositories菜單了。url
通常用到的倉庫種類是hosted、proxy。spa
hosted表明宿主倉庫,用來發布一些第三方不容許的組件,好比oracle驅動、好比商業軟件jar包等。插件
proxy表明代理遠程的倉庫,最典型的就是Maven官方中央倉庫、JBoss倉庫等等。
若是構建的Maven項目本地倉庫沒有依賴包,那麼就會去這個代理站點去下載,那麼若是代理站點也沒有此依賴包,就會去遠程倉庫下載依賴,這些遠程倉庫就是proxy。
倉庫類型:
hosted 內部項目的發佈倉庫
releases 內部的模塊中release模塊的發佈倉庫
snapshots 內部的模塊中snapshots模塊的發佈倉庫
3rd party 第三方依賴的倉庫,這個數據一般是由內部人員自行下載以後發佈上去
proxy 從遠程中央倉庫中尋找數據的倉庫
group 組倉庫,用來方便咱們開發人員進行設置的倉庫
maven項目索引:
下載Maven項目索引,項目索引是爲了使用者可以在私服站點查找依賴使用的功能
保存後,後臺會有一個下載任務,下載完成後,Maven索引就可使用了,例如在搜索框中輸入spring-core
能夠檢索出它的相關信息,包括怎麼配置依賴信息。咱們要想使用這個私服倉庫,先在項目pom中配置相關私服信息,以下指定私服倉庫
<repositories>
<repository>
<id>nexus</id>
<name>nexus</name>
<url>http://192.168.1.211:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
指定插件倉庫
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>nexus</name>
<url>http://192.168.1.211:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
pom文件配置完成後,當Maven項目構建的時候就會從私服上下載相關依賴。固然這個配置僅僅是在此項目中生效,對於其餘項目仍是不起做用。若是相對Maven的其餘項目也生效的話。須要修改全局的settings.xml文件。
修改settings.xml爲:
激活profile:
以後全部本機的Maven項目就在私服下載組件。
項目發佈到私服,要settings.xml中配置發佈權限
而後在控制檯運行 mvn clean deploy 命令,進行項目發佈
在控制檯發佈成功
而後進入到私服上的倉庫中,看一下確實存在剛剛發佈的項目。
宿主庫——3rd party
假如咱們下載了mysql的驅動程序jar包想給其餘項目組使用,就須要上傳該jar包。選中宿主庫——3rd party,填寫好相應的GAV以後,最後在最下面,選擇Artifact Upload上傳至宿主空間
顯示上傳成功
隨後在Browser Index選項卡中,點擊刷新後,繼可看到剛剛上傳的mysql構件
至此,Nexus搭建的整個過程就算完成了。