1. 安裝Maven
-
官網(wǎng)下載maven安裝包
wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
-
解壓maven安裝包,并移動至 /usr/local目錄下
tar -zxvf apache-maven-3.5.4-bin.tar.gz mv apache-maven-3.5.4 /usr/local
-
配置環(huán)境變量
vim /etc/profile
文件結(jié)尾添加
#maven配置 MAVEN_HOME=/usr/local/apache-maven-3.5.4 export MAVEN_HOME export PATH=${PATH}:${MAVEN_HOME}/bin
立即生效
source /etc/profile
-
檢查是否配置成功
mvn -v ###出現(xiàn)以下信息配置成功 Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T19:33:14+01:00) Maven home: /usr/local/apache-maven-3.5.4 Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-3.b13.el7_5.x86_64/jre Default locale: en_GB, platform encoding: UTF-8 OS name: "linux", version: "3.10.0-862.el7.x86_64", arch: "amd64", family: "unix"
2. 安裝nexus
-
官網(wǎng)下載nexus安裝包(OSS開源版寞焙,nexus是基于Jetty來運(yùn)行的鹰霍,安裝包內(nèi)嵌 )
wget --no-check-certificate https://sonatype-download.global.ssl.fastly.net/repository/repositoryManager/3/nexus-3.13.0-01-unix.tar.gz
-
解壓nexus安裝包,并移動至 /usr/local目錄下
tar -zxvf nexus-3.13.0-01-unix.tar.gz mv nexus-3.13.0-01 /usr/local
-
啟動nexus
cd /usr/local/nexus-3.13.0-01/bin ./nexus start
-
設(shè)置成服務(wù)
sudo ln -s /usr/local/nexus-3.13.0-01/bin/nexus /etc/init.d/nexus #查看nexus服務(wù)狀態(tài)、啟動服務(wù)佛吓、停止服務(wù)等 service nexus status/start/stop #設(shè)置為開機(jī)自啟動/關(guān)閉等 chkconfig nexus on/off
訪問地址http://10.137.214.16:8081,檢查安裝是否成功,默認(rèn)用戶名admin 密碼admin123
3. IDEA發(fā)布與下載jar包
- repository類型介紹
proxy:是遠(yuǎn)程倉庫的代理克蚂。比如說在nexus中配置了一個central repository的proxy,當(dāng)用戶向這個proxy請求一個artifact瞻赶,這個proxy就會先在本地查找赛糟,如果找不到的話,就會從遠(yuǎn)程倉庫下載砸逊,然后返回給用戶璧南,相當(dāng)于起到一個中轉(zhuǎn)的作用;
Hosted:是宿主倉庫师逸,用戶可以把自己的一些構(gòu)件司倚,deploy到hosted中,也可以手工上傳構(gòu)件到hosted里。比如說oracle的驅(qū)動程序对湃,ojdbc6.jar崖叫,在central repository是獲取不到的,就需要手工上傳到hosted里拍柒;
Group:是倉庫組心傀,在maven里沒有這個概念,是nexus特有的拆讯。目的是將上述多個倉庫聚合脂男,對用戶暴露統(tǒng)一的地址,這樣用戶就不需要在pom中配置多個地址种呐,只要統(tǒng)一配置group的地址就可以了右邊那個Repository Path可以點(diǎn)擊進(jìn)去宰翅,看到倉庫中artifact列表。不過要注意瀏覽器緩存爽室。
-
Maven settings.xml配置
<!--maven-public為倉庫組汁讼,包括maven-central(中央倉庫代理),maven-releases,maven-snapshots,maven-thirdparty(自己創(chuàng)建,存放第三方j(luò)ar包)--> <mirrors> <mirror> <id>sac-maven</id> <mirrorOf>*</mirrorOf> <name>sac-maven</name> <url>http://10.137.214.16:8081/repository/maven-public/</url> </mirror> </mirrors> <!-- 使用公共的developer/password賬號進(jìn)行日常的發(fā)布管理 --> <servers> <server> <id>sac-releases</id> <username>admin</username> <password>admin123</password> </server> <server> <id>sac-snapshots</id> <username>admin</username> <password>admin123</password> </server> </servers> <!-- 這個配置決定了我們的Maven服務(wù)器開啟snapshot配置阔墩,否則不能下載SNAPSHOTS的相關(guān)資源 --> <profiles> <profile> <id>nexus</id> <repositories> <repository> <id>sac-maven</id> <url>http://10.137.214.16:8081/repository/maven-public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> ... </repositories> ... </profile> </profiles>
-
IDEA中pom.xml配置(如有parent工程嘿架,直接在parent的pom.xml下面添加即可)
<!-- 設(shè)置deploy的地址,注意id與settings.xml中的id要對應(yīng) --> <distributionManagement> <repository> <id>sac-releases</id> <name>sac-releases</name> <url>http://10.137.214.16:8081/repository/maven-releases/</url> </repository> <snapshotRepository> <id>sac-snapshots</id> <name>sac-snapshots</name> <url>http://10.137.214.16:8081/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement>
IDEA中每個項目選擇deploy可以自動發(fā)布到私服