在上一篇文章中已將nexus搭建完成。訪問服務器地址驗證成功,在咱們項目裏開始使用私服以前先了解一下maven依賴順序,也就是mavne下載文件訪問倉庫的順序。html
上面第三條提到按配置遠程倉庫地址的順序進行搜索下載。下面簡要說明下:安全
最後搜素順序以下:
local_repo > settings_profile_repo > pom_profile_repo > pom_repositories > settings_mirror > central
(對比着配置文件的節點名稱來看更容易理解些)服務器
看完上面這些內容後,咱們開始在項目中配置maven私服吧。maven
地址:http://ip:8081(搭建maven私服的地址)
管理賬號:admin 管理密碼:123456 (登陸私服的帳號、密碼)
發包賬號:maven 發包密碼:123456 (爲了安全起見,使用管理帳號單首創建的帳號密碼用於發包使用)單元測試
普通項目成員即不須要向私服發佈包的,只須要在 pom 文件中加入如下配置便可測試
<repositories> <repository> <id>maven-public</id> <name>maven-public</name> <url>http://ip:8081/repository/maven-public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories>
配置說明:
其中 id 要和你的倉庫名稱一致,url 就是私服的倉庫地址,就是type 爲 group 的那個,它組合了一個 proxy 類型的和兩個 hosted 類型的倉庫。設置 snapshots 的 enabled 爲ture,表示容許下載 snapshots 版本的包。
引用私服中的jar包:ui
<dependencies> <dependency> <groupId>com.wangms.commons</groupId> <artifactId>commons-utils</artifactId> <version>1.0.0</version> </dependency> </dependencies>
向私服倉庫中發佈包,首先須要對倉庫有權限才能夠,沒有權限的用戶是沒辦法發佈的。
打開 maven 的配置文件 setting.xml ,找到 servers 節點在其中添加 server 節點,用戶名和密碼也能夠是管理員建立的帳號,可是須要對倉庫有添加權限。url
配置本地maven settings.xml
提示:兩種配置方法code
<servers> <server> <id>releases</id> <username>maven</username> <password>123456</password> </server> <server> <id>snapshots</id> <username>maven</username> <password>123456</password> </server> </servers> <mirrors> <mirror> <id>nexus</id> <name>internal nexus repository</name> <!--鏡像採用配置好的組的地址--> <url>http://ip:8081/repository/maven-public/</url> <mirrorOf>!internal.repo,*</mirrorOf> </mirror> </mirrors>
配置須要上傳到私服上的項目pom.xml配置信息server
<distributionManagement> <!--配置線上releases倉庫地址,只要是正式版本都會上傳到該地址 (注意要和settings.xml文件裏面的配置名稱相同)--> <repository> <id>releases</id> <name>Releases</name> <url>http://ip:8081/repository/maven-releases/</url> </repository> <!--配置線上snapshots倉庫地址,只要是快照版本都會上傳到該地址 (注意要和settings.xml文件裏面的配置名稱相同)--> <snapshotRepository> <id>snapshots</id> <name>Snapshot</name> <url>http://ip:8081//repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement>
特別說明:
當pom.xml中同時配置了releases倉庫和snapshots倉庫時。
若是隻配置了releases庫而版本號寫的是帶-SNAPSHOT的,build到最後一步會報400錯誤,由於它找不到對應的庫。
公共資源jar包發佈到maven私服命令以下:
mvn clean deploy
擴展知識點:
Maven私服的搭建和使用相關的系列文章共三篇,歡迎閱讀
Maven知識記錄(一)初識Maven私服
Maven知識記錄(二)使用Nexus搭建Maven私服
Maven知識記錄(三)項目中使用maven私服