Nexus 3.x 搭建本地 Maven 私有倉庫
本文首發於我的部落格,歡迎訪問
官方介紹:
The free artifact repository with universal support for popular formats.
10 million developers trust Nexus
來個全套的,私有倉庫搭建–>程式碼上傳–>遠端依賴
系統 環境:windows 64
軟體版本:Nexus Respository Manager OSS 3.x
無論安裝還是啟動,非管理員使用者必須以 管理員身份 執行命令列,管理員身份,管理員!重要說三遍
安裝時提示:
Could not open SCManager.
不用想了,以管理員身份重新開啟命令列吧
下載安裝
自行下載安裝包 Nexus Repository Manager
替你們找好 免費版 了
假設,安裝包解壓路徑為D:\IDE\nexus-3.9.0-01-win64\nexus-3.9.0-01
- 命令:進入解壓路徑:
C:\Windows\system32>cd D:\IDE\nexus-3.9.0-01-win64\nexus-3.9.0-01\bin
新增全路徑到環境變數,直接執行命令
- 安裝:
nexus.exe/install
當看到下面的提示,恭喜,成了
Installed service 'nexus' .
倉庫服務操作
只要 想對倉庫做些事兒,就得 以管理員身份登入
下面倆命令挺重要的,記住
開啟服務
nexus.exe/start
成功提示
Starting service 'nexus'.
- 等待大概 5-10 秒左右,啟動需要時間
- 埠號 『8081』
- 在瀏覽器位址列輸入 『你自己的 ip地址:8081』,或者 『
localhost:8081
』 - - 進入 倉庫管理頁面
localhost:8081
192.168.13.32:8081
停止服務
nexus.exe/stop
成功提示如下:
Stopping service 'nexus'.
Service stopped
上面的內容,記不住也沒關係
倉庫搭建
登入
管理員身份:user: admin pd: admin123,預設的,可以修改密碼
倉庫建立
丟個圖:
既然要 Maven 倉庫,當然選擇 Maven 了
可以創建出三種不同型別的倉庫
再丟個圖:
最簡單,不用任何配置的當屬 hosted ,其他兩種自行感受,我們以最簡單最直接最快看到結果為目的
倉庫名稱 不支援中文(廢話)
倉庫來了:
點進去,看看 倉庫地址吧
現在,倉庫有了,地址有了,該釋出 『遠端依賴包』 了
程式碼上傳
資訊配置
build.gradle
檔案
重要資訊:repository,pom
repository 包含:倉庫地址,使用者資訊
pom 包含 上傳到倉庫後,我們使用的 『遠端依賴 』資訊
apply plugin: 'maven'
uploadArchives {
repositories.mavenDeployer {
repository(url:"http://localhost:8081/repository/Test1/") {
authentication(userName:"admin", password:"admin123")
}
// 以com.android.support:appcompat-v7:25.1.0為對比
pom.version="0.0.1" // 對應版本號 25.1.0
pom.artifactId="virtualapk" // 對應 appcompat-v7
pom.groupId="com.android.support" // com.android.support
}
}
上傳
Gradle –> 待上傳module –>upload–>uploadArchives
過程不說了,沒啥點
看結果,丟圖
有人說,呀,我配置錯了,想刪了重新上傳,咋辦(別意外,我自己就遇到過)
別急,看這:
選中你的版本號,然後右側刪除,再重新整理一下,哦了
遠端依賴
這裡的遠端的意思是:不是我本地磁盤裡的
配置 遠端倉庫地址
不配這個地址,你就等著吧,預設的遠端公共倉庫根本沒有
工程.gradle 檔案
allprojects {
repositories {
....
//此處的遠端倉庫地址就是上面上傳的地址
maven { url "http://localhost:8081/repository/TEST/" }
}
}
當然,如果只有個別的 module 需要本地倉庫 依賴,配到需要的 module 裡就好了。
依賴語法
跟 正常的遠端依賴一樣,沒區別
implementation 'groupId:artifactId:version'
implementation 'com.android.support:virtualapk:0.0.1'
同步一下
再驗證一下
jar 包都有了,還能說啥
補充一句:自己的私有倉庫提供給其他人用的話,把localhost 快取 你自己的ip 地址