前置條件:html
1.安裝jdk,可參考 http://www.cnblogs.com/grey-wolf/p/6480489.htmlvim
2.nexus倉庫管理器,分爲兩個版本,Nexus Repository Manager OSS 和 Nexus Repository Manager Pro。前者能夠無償使用,相比後者,功能缺乏一些,可是不影響咱們搭建maven私服。瀏覽器
因此就選擇OSS版本。服務器
下載地址:https://www.sonatype.com/download-oss-sonatype,下載不下來能夠去這裏 http://download.csdn.net/detail/cctvckl/9766638oracle
文檔下載地址:app
http://books.sonatype.com/nexus-book/pdf/nxbook-pdf.pdfmaven
好了,讓咱們正式開始吧。ide
rz
mv nexus-2.14.3-02-bundle.tar.gz /home/ckl/upload/測試
解壓到/usr/local
tar -zxvf /home/ckl/upload/nexus-2.14.3-02-bundle.tar.gz -C /usr/local/ui
注意:
必定要解壓到這個目錄下,具體緣由我也不知道,文檔裏是這麼作的,咱們也不必本身找麻煩。
sudo ln -s nexus-2.14.3-02 nexus
vim /etc/profile,在最後加上下面這一句,:wq保存退出
(博客園的這個數字序號不知道怎麼才能設成2.有知道的朋友麻煩告知下)
前臺啓動:
cd /usr/local/nexus
./bin/nexus console
之後臺進程啓動:
./bin/nexus start
查看輸出的日誌:
tail -f logs/wrapper.log
好了,咱們來前臺啓動一下。咦,沒起來,提示:
意思是堅持使用root用戶運行的話,須要設置一個環境變量.
vim /etc/profile
結尾加上
export RUN_AS_USER=root
保存退出。
刷新:source /etc/profile
再次運行,結果以下:
從紅框標識及相關文檔,能夠知道,進程在8081端口啓動。
好了,咱們在瀏覽器上看看能不能訪問吧,路徑:
http://192.168.2.141(換成你的ip):8081/nexus.
結果如圖所示:
點擊右上角登陸:
默認用戶名爲admin,密碼admin123
3.搭建私服
3.1 界面元素介紹
登陸後,點擊左側Repositories,界面如上圖所示。
右側的列表中,能夠看到nexus預設的幾個倉庫。
第一個public Repositories,類型爲group,這個簡單理解爲倉庫的集合,下面的倉庫就是能夠加入到這個集合的元素。
對外能夠只提供一個單獨的url,如上圖顯示爲:http://192.168.2.141:8081/nexus/content/groups/public/
大部分的終端用戶,只須要配置上面這一個單獨的聚合後的url,而不用單獨配置多個倉庫。用戶也不須要知道某個jar包具體來源於maven 中央倉庫,或者是Apache Snapshots,或者是咱們本身添加的其餘倉庫。
這樣的好處在於:若是咱們要新增某個倉庫(如開源中國、阿里雲),客戶端不須要作任何更改,只須要在nexus上將要新增的倉庫加入到對外提供服務的倉庫 group中就能夠。
第二個3rd party,與倒數第一個和第二個倉庫,Releases和Snapshots同樣,類型爲hosted,意思是由nexus本機管理的倉庫。該倉庫用於商業化的,第三方提供的非開源的依賴倉庫,如oracle jdbc driver。
倒數第二個Releases,用於存放開發團隊內部用的正式版的依賴。
倒數第一個Snapshots,用於存放開發團隊內部平常構建的頻率更新較快的依賴包。
Apache Snapshots和Central類型都是proxy,意思是遠端倉庫的代理。前者包含了Apache Software Foundation 發佈的快照版本(這麼翻譯不知道對不對),後者爲Maven中央倉庫,咱們平時maven默認就是鏈接該倉庫。
Central M1 Shadow類型爲virtual,按官方文檔的意思是,只是已有倉庫的一個不一樣呈現方式的映射。有須要能夠參考官方手冊6.2.3節。
3.2 倉庫集合的界面
點擊Configuration,能夠看到當前添加到該集合的倉庫列表及順序(優先級高的在上面,可用鼠標拖拽),當咱們新增了倉庫,將會出如今右側的available Repository,添加到左邊便可。
若是有哪一個倉庫不想加入到該集合,也能夠拖拽到右邊來。
3.3使用本地maven客戶端測試nexus是否成功部署
首先複製倉庫集合的repository url,客戶端配置須要用到。
配置maven客戶端:
打開settings.xml,按照以下步驟修改:(該部分參考文檔4.2節)
<mirrors> <mirror> <!--This sends everything else to /public --> <id>nexus</id> <mirrorOf>*</mirrorOf> <url>http://192.168.2.140:8081/nexus/content/groups/public</url> </mirror> </mirrors>
<profiles> <profile> <id>nexus</id> <!--Enable snapshots for the built in central repo to direct --> <!--all requests to nexus via the mirror --> <repositories> <repository> <id>central</id> <url>http://central</url> <releases><enabled>true</enabled></releases> <snapshots><enabled>true</enabled></snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>central</id> <url>http://central</url> <releases><enabled>true</enabled></releases> <snapshots><enabled>true</enabled></snapshots> </pluginRepository> </pluginRepositories> </profile> </profiles> <activeProfiles> <activeProfile>nexus</activeProfile> </activeProfiles>
接下來在ide中測試下(我我的用maven命令行很少,不熟悉,仍是用intelj idea演示吧)
在idea中依次打開File--Settings--搜索Maven--出現以下界面:
保證上述幾項指向正在用的maven目錄和配置文件便可。點擊ok,退出。
打開Maven Projects窗口,勾選Profiles中的nexus。
隨便新建一個maven工程,在pom中添加一項本地倉庫中沒有的依賴,應該出現以下圖示:(下圖能夠看出,正在去咱們配置的私服下載maven依賴)
至此。大致配置完成。
上傳本地內部依賴到私服,能夠參考:
http://jingyan.baidu.com/article/a948d6517b72eb0a2dcd2e2a.html
ps:有問題歡迎你們一塊兒討論,也能夠直接參考文章開頭髮的pdf文檔,很是詳細。