項目管理工具Maven6
- 安裝nexus
將資源下的私服文件夾中的nexus-2.12.0-01-bundle.zip 解壓
在命令提示符下,進入此目錄,敲入命令
nexus install
如有下列提示則證明安裝成功。
如果想卸載,命令為:
nexus uninstall
- 啟動nexus
在服務中找到nexus ,右鍵啟動 - 進入nexus
打開瀏覽器輸入地址:http://localhost:8081/nexus
點擊右上角的Log In ,在彈出窗口中輸入username為admin , password為admin123 ,點擊Log In按鈕
(二)構建索引
剛剛安裝好的nexus是無法直接搜索到jar包的,必須下載索引才可以正常使用。
nexus-maven-repository-index.gz
nexus-maven-repository-index.properties
這兩個文件一般在此頁面的最後的位置,另外還需要在網上下載一個名為indexer-cli-5.1.1.jar 的jar包
將以下三個文件放入一個文件夾
cmd執行:
java -jar indexer-cli-5.1.1.jar -u nexus-maven-repository-index.gz -d indexer
執行後生成目錄indexer,目錄下的文件是索引文件,如下圖
將D:\nexus-2.12.0-01-bundle\sonatype-work\nexus\indexer\central-ctx 目錄下的文件刪除,將上邊的索引文件拷貝到此目錄下。
拷貝後重新啟動nexus,然後進入nexus搜索jar包發現可以進行搜索了。
(三)倉庫類型
1、hosted:宿主倉庫,自己項目的jar要放到hosted類型的倉庫中。
2、proxy:代理倉庫,代理中央倉庫
3、virtual:虛擬倉庫,存儲了maven1的構件,一般不用。
4、group:倉庫組,將一些倉庫組成一個組,自己項目連接倉庫組去下載jar包。
平常開發中都去連接倉庫組,倉庫組中包括:hosted、proxy等。
倉庫所在的文件夾見下面的截圖:
(四)鏡像配置
nexus已經安裝好了,我們要開始使用它了。現在我們需要在maven的配置文件settings.xml中配置鏡像,讓maven找私服,而不是直接到中央倉庫下載。
打開maven的配置文件settings.xml,添加如下配置:
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://localhost:8081/nexus/content/groups/public/</url>
</mirror>
</mirrors>
mirrors為鏡像組,可以配置多個mirror(鏡像),我們這裏配置的是nexus中的中央代理倉庫。
配置好後,我們需要創建一個項目來測試一下,看看是不是可以通過nexus來下載jar包。
測試步驟:
創建maven工程(jar),在pom.xml中添加依賴,觀察nexus中是否下載了相應的jar包,目錄為 nexus-2.12.0-01-bundle\sonatype-work\nexus\storage\central
(五)發布自己的工程jar到nexus
- 創建maven工程itcastutil (jar)
坐標信息: Group Id : cn.itcast.util
Artifact Id: itcastutil
創建包cn.itcast.util
創建類DateUtil
package cn.itcast.util;
import java.util.Calendar;
import java.util.Date;
/**
* 日期工具類
* @author Administrator
*
*/
public class DateUtil {
/**
* 獲取當前年份
* @return
*/
public static int getYear(){
Calendar calendar=Calendar.getInstance();
calendar.setTime(new Date());
return calendar.get(Calendar.YEAR);
}
}
在pom.xml中引入如下配置信息
<distributionManagement>
<repository>
<id>releases</id>
<url>
http://localhost:8081/nexus/content/repositories/releases/
</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>
http://localhost:8081/nexus/content/repositories/snapshots/
</url>
</snapshotRepository>
</distributionManagement>
- 在Maven中配置
將以下配置信息放入maven的settings.xml中
<servers>[/align]<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
註意:settings.xml 配置 <id>和 pom.xml<id> 對應!
然後執行命令 deploy ,有如下提示表示部署成功
我們在私服中進行查詢,發現可以查到剛才我們上傳的jar
(六)發布第三方的工程jar到nexus
有很多jar包由於版權等問題,並不會出現在中央倉庫中,比如oracle的驅動,那如何將這類jar包放在nexus中呢?我們看下列操作步驟:
(1)選擇左側菜單的Repositories, 在Repositories窗口中選擇3rd party
(2)在3rd party窗口中選擇Artifact Upload
(3)在Artifact Upload選項卡中填寫坐標,並上傳jar包。
上傳jar包選擇oracle的驅動。
填寫坐標
有下列提示則為上傳成功
上傳成功後可以在3rd party庫中找到此jar包
項目管理工具Maven6