相信從事於Java或Android開發的朋友們對於Gradle Maven倉庫並不會感到陌生,得益於強大的開源力量,搭建本地私服變得容易了很多。本文簡單記錄關於Sonatype Nexus管理工具的搭建,便於記憶。
本文基於windows環境下對Nexus(Nexus Repository Manager) 3.15.2版本的搭建,下載鏈接或訪問官網自行下載。
一、搭建Nexus
下載壓縮包解壓至合適的目錄。
本文爲:F:\Programs\nexus-3.15.2-01
。
再次強調:作爲開發者應避免目錄含有中文字符或空格符
以管理員身份運行
“命令提示符”windows命令窗口
命令進入nexus的執行目錄“bin”:
- 先切入nexus文件所在的盤符,本文爲F盤
C:\WINDOWS\system32>F:
- 再進入“bin”目錄
F:\>cd Programs\nexus-3.15.2-01\bin
命令安裝nexus服務
F:\Programs\nexus-3.15.2-01\bin>nexus.exe/install
- 成功則提示:
Installed service 'nexus'.
- 如果此前已安裝好則提示:
Service is already stopped.
Installed service 'nexus'.
沒關係,只是自動停止並覆蓋安裝該服務。
- 如果提示:
Could not open SCManager.
很大原因說明你沒有以管理員身份運行命令提示符窗口或者沒有獲取到管理員權限。
開啓服務
F:\Programs\nexus-3.15.2-01\bin>nexus.exe/start
- 成功則提示:
Starting service 'nexus'.
表示服務正在開啓,注意:開啓成功並不會給提示的,等待幾秒後就可以享用你的安裝成果了。
關閉服務
F:\Programs\nexus-3.15.2-01\bin>nexus.exe/stop
成功則提示:
Stopping service 'nexus'.
Service stopped
二、創建Maven倉庫
nexus服務開啓後會自動創建用戶爲:admin,密碼爲:admin123的管理員賬號。服務訪問端口爲:8081
- 打開瀏覽器訪問nexus服務web端,輸入地址爲:“ip地址:8081”,本地可直接輸入
localhost:8081
- 點擊web頁面右上角“Sign in”登錄按鈕,輸入上文所述賬號即可登錄。
- 登錄後,按下圖箭頭順序點擊按鈕
到選擇創建倉庫界面
多種類型倉庫供我們選擇,其中包括Maven類型,Nexus提供創建三種類型的Maven倉庫,這裏我們選擇比較簡單的“maven2 (hosted)”。
填寫倉庫名,簡單起見其它項保持默認即可,創建倉庫
創建完成後,會自動返回上一頁到已創建的倉庫列表界面,最下方會列出剛剛創建的“Test”倉庫一欄,然後點擊此欄上的“copy”按鈕即可複製該倉庫的鏈接url,本文爲:http://localhost:8081/repository/Test/
三、代碼庫上傳
配置上傳gradle腳本
在依賴Module項目下的build.gradle文件上編輯以下腳本(以CySwitch爲例):
apply plugin: 'maven'
uploadArchives {
repositories {
mavenDeployer {
//倉庫地址
repository(url: "http://localhost:8081/repository/Test/") {
// 驗證賬號,即nexus服務管理賬號
authentication(userName: "admin", password: "admin123")
}
pom.groupId = 'cn.icheny.view' // 組織id,一般習慣用包名標識
pom.artifactId = 'CySwitch' // 項目名
pom.version = '1.0.2' //發佈版本號
// 下面內容可選,需要描述許可證的情況下
pom.project {
licenses {
license {
name 'The Apache Software License, Version 2.0'
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
}
}
}
}
}
}
執行腳本任務
配置完畢後,Snyc一下,在Gradle的界面模塊會出現“upload–>uploadArchives”任務,雙擊即可執行編譯上傳任務:
獲取依賴庫遠程依賴腳本
- 任務執行完畢後,回到瀏覽器,按下圖操作:
- 雙擊“Test”倉庫這一欄,就可以看到上傳的依賴庫了。這時候點擊依賴庫的版本號,右邊就會出現當前依賴庫的管理功能模塊。
眼尖的童鞋應該很快就能看到右下方熟悉的信息,遠程依賴腳本:
implementation 'cn.icheny.view:CySwitch:1.0.2'
腳本上方有個“copy”按鈕,可直接複製腳本。
四、遠程依賴
本來寫到上方就算結束了,但是爲了防止童鞋們在使用遠程依賴遇到問題,這裏還是說一下吧。
配置遠程倉庫地址
在Project下的build.gradle中添加倉庫地址:
allprojects {
repositories {
......
// 添加Nexus maven倉庫地址
maven { url "http://localhost:8081/repository/Test/" }
}
}
配置依賴腳本
這一步大家都知道,在需要依賴的Module下的build.gradle中添加依賴腳本:
dependencies {
......
implementation 'cn.icheny.view:CySwitch:1.0.2'
}
至此,本文全部結束,希望能給同行朋友們帶來一些幫助。