前言:
????????以前一直用maven開發(fā)舔糖,但是僅限于mvn -clean, mvn -package,mvn? -install 等比較簡單的使用娱两,從沒有實際動手搭建過一套maven私服,所以決定搭建一套自己的maven私服剩盒,搭建maven私服的好處:如果要下載的jar包在私服中別人下載過谷婆,那么不再需要去訪問maven的中央倉庫去下載,訪問中央倉庫去下載的速度真的很慢辽聊。這個優(yōu)點總結(jié)起來就是纪挎,方便團隊對jar包的共享及管理
先上之前看過的一張圖,方便理解:
部署環(huán)境:
1、centos-6.5
2跟匆、jdk8
3异袄、 nexus-3.13.0-01
4、apache-maven-3.6.1
下面開始一步步的操作介紹玛臂,以及我在搭建過程中的問題,會列舉出來迹冤。
1讽营、安裝jdk
由于原來虛擬機沒有安裝jdk,所以需要先安裝jdk,使用jdk1.8,先在/usr/local/data下創(chuàng)建jdk8文件夾(依據(jù)個人喜好)泡徙,作為安裝目錄使用橱鹏。
1.1 使用命令:? yum -y list java*? 查看當(dāng)前系統(tǒng)能使用java的版本,執(zhí)行命令后如下顯示:
1.2 根據(jù)自己電腦配置,我選擇安裝的是x86_64的莉兰,執(zhí)行如下命令挑围,進行安裝:
yum -y install? java-1.8.0-openjdk.x86_64? ,安裝完成后 執(zhí)行 java -version 命令 查看到如下結(jié)果糖荒,說明安裝成功:
2杉辙、安裝maven
2.1 使用wget 命令直接下載maven安裝包? : wget??https://www-eu.apache.org/dist/maven/maven-3/3.6.1/source/apache-maven-3.6.1-src.tar.gz
2.2 tar -zxvf??apache-maven-3.6.1-src.tar.gz? 解壓安裝包
2.3 配置環(huán)境變量 vim?/etc/profile ,在末尾加上下面配置:
#maven
MAVEN_HOME=/usr/local/data/maven3/apache-maven-3.6.1
export?MAVEN_HOME
export?PATH=${PATH}:${MAVEN_HOME}/bin
然后使用source命令使配置生效:source?/etc/profile
2.4 查看是否生效捶朵,顯示如下說明安裝成功
3桌肴、安裝nexus
3.1 首先在/usr/local/data下創(chuàng)建nexus3文件夾提揍,訪問地址下載安裝包:
3.2 下載完之后立哑,cd??/usr/local/data/nexus3 目錄下萧芙,使用 rz 命令將下載好的nexus包上傳到nexus3目錄下,之后使用命令tar -zxvf??nexus-3.17.0-01-unix.tar.gz 對壓縮包進行解壓縮寓搬。解壓后只有2個目錄,如下圖藍色字體顯示县耽。
3.3 切換到 nexus-3.13.0-01/bin 目錄下執(zhí)行 ./nexus start 命令啟動nexus服務(wù)
使用 ./nexus state 命令查看啟動狀態(tài)句喷,如下圖顯示,說明服務(wù)啟動成功兔毙。
安裝過程中遇到的問題:
1唾琼、啟動nexus服務(wù)報錯如下,找不到repository澎剥,去開源社區(qū)中找到了解決方法:重命名文件夾nexus3為nexus_bak(據(jù)說刪除這個文件夾也可以锡溯,我沒試過),重啟服務(wù)問題解決哑姚。
Caused by: com.orientechnologies.orient.core.exception.OCommandExecutionException: Class 'REPOSITORY' was not found in database 'config'
2祭饭、nexus3 默認端口8081,通過瀏覽器 訪問 ip:port 對應(yīng)地址叙量,一直無法訪問倡蝙,后來發(fā)現(xiàn)是防火墻問題,把防火墻關(guān)了(service iptables stop)绞佩,重新訪問就可以登錄了寺鸥。默認登錄名、密碼是:admin/admin123. 登錄成功品山。
4胆建、私服使用的一些說明
????4.1 常用的倉庫如圖8所示,maven-central 是中央倉庫肘交,注意中央倉庫的type是 proxy類型笆载,國內(nèi)一般使用阿里云倉庫作為中央倉庫比較多;maven-releases 與 maven-snapshots的type是hosted(宿主),用來存放本地上傳的第三方j(luò)ar宰译。它們的區(qū)別是snapshots 是快照版本檐蚜,releases是正式發(fā)布版本;maven-public 的類型是type 是 group類型沿侈,它是一個倉庫組闯第,用于合并多個hosted/proxy倉庫,當(dāng)使用多個reposity庫時就不需要多次引用不同的庫了缀拭,只需要引用一個group即可咳短。如圖9所示,
更多技術(shù)分享蛛淋,面試資料整理咙好,請關(guān)注下方微信公眾號;后臺回復(fù) "面試資料"? 獲得提取碼褐荷,您將免費獲得一份面試寶典勾效。
百度網(wǎng)盤鏈接: https://pan.baidu.com/s/19HcIcfCaM58dw8_A2eCdFA?