CI服務器 - Maven私有庫和本地庫的安裝與配置(sonatype Nexus+ maven )

持續集成篇 -  Maven私有庫和本地庫的安裝與配置 -  Sonatype Nexus + Maven 
 
環境:CentOS 6.6 Final、JDK7、Sonatype Nexus、Maven 
IP:192.168.4.221 
root用戶操作 

 
前提:已安裝JDK7並配置好了環境變量 
 
1、下載最新版 Nexus(本教程使用的是:nexus-2.11.2-03-bundle.tar.gz),下載地址:
http://www.sonatype.org/nexus/go/ 
#  wget  https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.11.2-
03-bundle.tar.gz 

 
2、解壓 
# mkdir nexus 
# tar -zxvf nexus-2.11.2-03-bundle.tar.gz -C nexus 
# cd nexus 
# ls 

nexus-2.11.2-03  sonatype-work 
(一個nexus服務,一個私有庫目錄) 
 
3、編輯Nexus的nexus.properties文件,配置端口和 work目錄信息(保留默認) 
# cd nexus-2.11.2-03 
# ls 

bin  conf  lib  LICENSE.txt  logs  nexus  NOTICE.txt  tmp 
查看目錄結構,jetty運行 
 
# cd conf 
# vi nexus.properties
 
# Jetty section 
application-port=8081 
application-host=0.0.0.0 
nexus-webapp=${bundleBasedir}/nexus 
nexus-webapp-context-path=/nexus 
 
# Nexus section 
nexus-work=${bundleBasedir}
/../sonatype-work/nexus 
runtime=${bundleBasedir}/nexus/WEB-INF 
 
 
4、編輯nexus腳本, 配置 RUN_AS_USER參數 
# vi /root/nexus/nexus-2.11.2-03/bin/nexus     
    
#RUN_AS_USER= 
改爲: 
RUN_AS_USER=root 
 
5、防火牆中打開8081 端口 
# vi /etc/sysconfig/iptables 
添加: 
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8081 -j ACCEPT 
保存後重啓防火牆 
# service iptables restart 
 
6、啓動nexus 
# /root/nexus/nexus-2.11.2-03/bin/nexus start 

./nexus start
**************************************** 
WARNING - NOT RECOMMENDED TO RUN AS ROOT 
**************************************** 
Starting Nexus OSS... 
Started Nexus OSS. 

 
 
7、瀏覽器中打開:http://192.168.4.221:8081/nexus/ 
  
8、登錄,默認用戶名admin,默認密碼admin123: 
 
 
 
 
到此,Nexus已安裝完成,接下來是Nexus的配置 
 
 
Nexus配置(登錄後) 
1、菜單Administration/Server配置郵箱服務地址(如果忘記密碼,可以通過該郵箱找回密
碼) 
 
 
給用戶配置郵箱地址,方便忘記密碼時找回: 
 
 
用戶修改密碼 
 
 
 
2、倉庫類型 
 
group 倉庫組:Nexus 通過倉庫組的概念統一管理多個倉庫,這樣我們在項目中直接請 求倉庫組即可請求到倉庫組管理的多個倉庫; 
hosted 宿主倉庫: 主要用於發佈內部項目構件或第三方的項目構件 (如購買商業的構件)
以及無法從公共倉庫獲取的構件(如 oracle 的  JDBC 驅動) 
proxy 代理倉庫:代理公共的遠程倉庫; 
virtual 虛擬倉庫:用於適配 Maven 1; 
一般用到的倉庫種類是 hosted、proxy 
 
Hosted倉庫常用類型說明: 
releases  內部的模塊中release模塊的發佈倉庫 
snapshots 發佈內部的 SNAPSHOT模塊的倉庫 
3rd party 第三方依賴的倉庫,這個數據通常是由內部人員自行下載之後發佈上去 
 
如果構建的Maven項目本地倉庫沒有對應的依賴包,那麼就會去 Nexus 私服去下載, 
如果Nexus私服也沒有此依賴包,就回去遠程中央倉庫下載依賴,這些中央倉庫就是proxy。 
Nexus私服下載成功後再下載至本地 Maven庫供項目引用。 
 
3、設置proxy代理倉庫(Apache Snapshots/Central/Codehaus Snapshots)准許遠程下載
如: 
 
 
4、Maven本地庫的安裝與配置(請看參考視頻的操作) 
  環境變量、setting.xml 
 
5、MyEclipse中的Maven配置(請看參考視頻的操作) 
 
6、項目的構建與發佈演示(請看參考視頻的操作) 

  修改common-parent中的pom.xml中的私有庫地址 
 
7、上傳第三方包操作演示 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章