使用Nexus搭建maven私服

1、私服簡介

私服是架設在局域網的一種特殊的遠程倉庫,目的是代理遠程倉庫及部署第三方構件。有了私服以後,當 Maven 須要下載構件時,直接請求私服,私服上存在則下載到本地倉庫;不然,私服請求外部的遠程倉庫,將構件下載到私服,再提供給本地倉庫下載。html


 

 


 

 

2、使用私服的好處

一、jar包下載速度比中央倉庫快數據庫

二、有些jar包因爲版權緣由,maven中央倉庫沒有,好比oracle JDBC驅動。另外也會有一些項目中用到的比較老的開源jar包,中央倉庫也沒用windows

三、公司本身開發的jar包並不開源,不能上傳到maven中央倉庫,只能部署到私服上面瀏覽器

四、便於進行統一jar包管理服務器

五、可在此基礎上搭建自動化部署服務器:oracle

1)Maven構建和釋放項目;app

2)SubVersion源代碼庫,管理源代碼;maven

3)遠程存儲庫管理器(Jfrog/ Nexus)來管理項目的二進制文件。測試

3、3種Maven倉庫管理軟件

一、Apache的Archivaurl

二、JFrog的Artifactory

三、Sonatype的Nexus(本文將使用)

4、Nexus使用:(默認jdk和maven已經成功安裝)

一、下載Nexus

下載地址:https://www.sonatype.com/download-oss-sonatype

我安裝的是nexus-2.14.0-01-bundle.zip

 

 

二、安裝Nexus

將下載的文件解壓到一個英文目錄下,而後進入bin目錄,個人爲F:\nexus-2.14.0-01-bundle\nexus-2.14.0-01\bin\jsw\windows-x86-32,看到以下圖:

 



1)修改啓動端口:默認8081,若未被佔用則可不更改


 



2)再轉到jswàconf目錄,找到wrapper.conf,修改本機安裝的jdk路徑

 



 

3)以管理員身份運行install-nexus.bat

4)以管理員身份運行start-nexus.bat,至此,nexus已經安裝啓動完成

三、可視化界面

1)瀏覽器打開http://localhost:8081/nexus/

2)右上角login in ,輸入用戶名:admin,密碼:admin123(默認管理員初始用戶名密碼)

3)左側點擊Repository顯示以下圖所示

 


4)nexus倉庫分類

  1. hosted 宿主倉庫:主要用於部署沒法從公共倉庫獲取的構件(如 oracle 的 JDBC 驅動)以及本身或第三方的項目構件;
  2. proxy 代理倉庫:代理公共的遠程倉庫;
  3. virtual 虛擬倉庫:用於適配 Maven 1;
  4. group 倉庫組:Nexus 經過倉庫組的概念統一管理多個倉庫,這樣咱們在項目中直接請求倉庫組便可請求到倉庫組管理的多個倉庫。

 

 

 

四、配置maven的代理服務器

注:此步驟的前提是你的電腦不能鏈接外網,若是能夠上外網,這裏也沒有意思,只是介紹一下, 在左側菜單找到如圖:

   

 

  點擊查看右邊有不少選項,找到這裏

 

 

添加你的代理服務器就能夠了。

五、上傳非開源或者本身的jar包到宿主庫

     咱們目前只是用3rd party這個第三方的功能,將maven倉庫中沒有構件的jar包上傳到服務器。如何將第三方的jar上傳到nexus上面呢?以下:舉例上傳oracle的驅動包。

【注意:3rd party、Snapshots、Releases這三個,分別用來保存第三方jar(典型的oracle數據庫的jar驅動包),項目組內部的快照、項目組內部的發佈版。】

 

 

 

 

 

 

 

 

六、獲取私服上的Maven構件

那麼如今nexus已經安裝好,也清楚了怎麼上傳本身的jar包,下面來看下如何獲取Maven構件:

1)創建了一個maven的項目。

2)先去服務器看看jar的maven構件

 

 

3)而後在pom.xml中添加以下的本地倉庫地址:

 

 

七、設置代理倉庫(倉庫組)

1)選擇Central倉庫點擊下邊的Configuration把Download Remote Indexes屬性設爲True保存

 

 

 



2)在Central倉庫上右鍵而後點擊Repair Index 便可下載中心倉庫的索引文件,稍等幾分鐘點擊下邊的Browse Index便可看見下載的索引文件。

 



3)往Public Repositories中添加Central倉庫,點擊Public

Repositories在Configuration選項卡中把Central移到左側

 


八、項目中使用maven私服的兩種方式

1)配置在本地maven的setting.xml中,則對於本地全部的maven項目生效

<mirrors>     

<mirror>     

<id>nexus-releases</id>     

<mirrorOf>*</mirrorOf>     

<url>http://localhost:8081/nexus/content/groups/public</url>     

</mirror>    

<mirrors>     

2)配置在項目的pom.xml中,只針對當前項目有效

<repositories>

  <repository>

    <id>nexus</id>

<name>nexus Repository</name>  <url>http://localhost:8081/nexus/content/groups/public/</url>

  </repository>

</repositories>

3)測試結果

 


 

原文連接:http://www.92to.com/bangong/2016/10-22/11675892.html

相關文章
相關標籤/搜索