http://blog.csdn.net/zwc0910/article/details/17349111html
二、以管理員身份運行cmd,cd進入解壓文件的bin目錄,執行nexus.bat installapache
若未以管理員身份運行則安裝不了,由於權限不夠
三、開啓nexus服務,訪問nexus服務器地址:http://localhost:8081/nexus/,默認登陸帳戶爲admin,默認密碼爲admin123,登陸成功後點擊Repositories可看到私服有如下類型倉庫:
1)hosted,宿主倉庫,部署本身的jar到這個類型的倉庫,包括releases和snapshot兩部分,Releases公司內部發布版本倉庫、 Snapshots 公司內部測試版本倉庫
2)proxy,代理倉庫,用於代理遠程的公共倉庫,如maven中央倉庫,用戶鏈接私服,私服自動去中央倉庫下載jar包或者插件。
3)group,倉庫組,用來合併多個hosted/proxy倉庫,一般咱們配置本身的maven鏈接倉庫組。
4)virtual(虛擬):兼容Maven1 版本的jar或者插件
四、nexus倉庫默認在解壓文件的sonatype-work\nexus\storage目錄中:服務器
apache-snapshots:代理倉庫,存儲snapshots構件,代理地址https://repository.apache.org/snapshots/app
central-m1:virtual類型倉庫,兼容Maven1 版本的jar或者插件eclipse
releases:本地倉庫,存儲releases構件。maven
snapshots:本地倉庫,存儲snapshots構件。測試
thirdparty:第三方倉庫url
public:倉庫組spa
2、向maven私服上傳寫好的jar
.net
一、需求:將項目子模塊ssm_dao這個工程打包成jar並上傳到私服
二、第一步:須要在客戶端即部署dao工程的電腦上配置 maven環境,並修改 settings.xml 文件,配置鏈接私服的用戶
和密碼。此用戶名和密碼用於私服校驗,由於私服須要知道上傳都 的帳號和密碼 是否和私服中的帳號和密碼 一致。
在maven文件夾下apache-maven-3.5.0\conf\settings.xml文件添加一下代碼:(<servers>節點內)
[html] view plain copy
三、在ssm_dao的pom.xml文件中添加一下代碼:
[html] view plain copy
根據工程的版本號決定上傳到哪一個宿主倉庫,若是版本爲release則上傳到私服的release倉庫,若是版本爲snapshot則上傳到私服的snapshot倉庫。
如:ssm_dao的工程的版本號爲0.0.1-SNAPSHOT,則ssm_dao打包好的jar在本地倉庫snapshots可見
[html] view plain copy
四、正式上傳:首先啓動nexus服務,對ssm_dao工程執行deploy命令,看到BUILD SUCCESS則表示上傳成功了
此時在\nexus-2.12.0-01-bundle\sonatype-work\nexus\storage\snapshots下能找到,可是在本地倉庫並無,由於jar包上傳在maven私服,接下來介紹如何能讓本身上傳的jar出如今本地倉庫
如圖:(本地snapshots)
如圖:(私服)
五、此時將ssm_dao工程關閉,能夠看到依賴ssm_dao的ssm_service工程出現感嘆號(缺乏了ssm_dao.jar)
3、maven私服自動下載jar包
一、在沒有配置nexus以前,若是本地倉庫沒有,去中央倉庫下載。有了私服以後,本地項目首先去本地倉庫找jar,若是沒有找到則鏈接私服從私服下載jar包,若是私服沒有jar包私服同時做爲代理服務器從中央倉庫下載jar包,這樣提升了下載速度,項目鏈接私服下載jar包的速度要比項目鏈接中央倉庫的速度快的多。
二、nexus中包括不少倉庫,如上面介紹的hosted中存放的是本身發佈的jar包及第三方公司的jar包,proxy中存放的是中央倉庫的jar,爲了方便從私服下載jar包能夠將多個倉庫組成一個倉庫組,每一個工程須要鏈接私服的倉庫組下載jar包,這樣在項目中配置下載路徑只須要給倉庫組路徑便可,即:
http://localhost:8081/nexus/content/groups/public/
三、第一步:在客戶端的setting.xml中配置私服的倉庫,因爲setting.xml中沒有repositories的配置標籤須要使用profile定義倉庫(profile節點內)
[html] view plain copy
使用profile定義倉庫須要激活纔可生效,再在profile結束標籤後添加一下代碼:
[html] view plain copy
四、配置成功後經過eclipse查看ssm_service工程下pom.xml的Effective POM選項,可看到以下代碼:
[html] view plain copy
表示當該工程須要的jar在本地倉庫沒有時,根據這裏配置的訪問路徑自動去maven私服下載。此時再update一下父工程,發現ssm_service的感嘆號消失(此時ssm_dao仍是close狀態),說明ssm_service工程已經在maven私服內下載了ssm_dao.jar,同時在本地倉庫也存在了該jar。