Nexus私有倉庫簡介


1.    Nexus中的倉庫

  1.1  類型介紹

    登陸Nexus,在左邊菜單欄里選擇Repositories,然后會出現右邊的畫面,右邊上半部分是列出來的repository,黑體字是類型為group的repository。

    這里簡單介紹下幾種repository的類型:

    Ø  hosted,本地倉庫,通常我們會部署自己的構件到這一類型的倉庫。比如公司的第二方庫。

    Ø  proxy,代理倉庫,它們被用來代理遠程的公共倉庫,如maven中央倉庫。

    Ø  group,倉庫組,用來合並多個hosted/proxy倉庫,當你的項目希望在多個repository使用資源時就不需要多次引用了,只需要引用一個group即可。

    

 

  1.2  管理本地倉庫

    我們前面講到類型為hosted的為本地倉庫,Nexus預定義了3個本地倉庫,分別是Releases, Snapshots, 3rd Party. 分別講一下這三個預置的倉庫都是做什么用的:

  Releases:

     這里存放我們自己項目中發布的構建, 通常是Release版本的, 比如我們自己做了一個FTP Server的項目, 生成的構件為ftpserver.war, 我們就可以把這個構建發布到Nexus的Releases本地倉庫. 關於符合發布后面會有介紹.

  Snapshots:

     這個倉庫非常的有用, 它的目的是讓我們可以發布那些非release版本, 非穩定版本, 比如我們在trunk下開發一個項目,在正式release之前你可能需要臨時發布一個版本給你的同伴使用, 因為你的同伴正在依賴你的模塊開發, 那么這個時候我們就可以發布Snapshot版本到這個倉庫, 你的同伴就可以通過簡單的命令來獲取和使用這個臨時版本.

  3rd Party:

    顧名思義, 第三方庫, 你可能會問不是有中央倉庫來管理第三方庫嘛,沒錯, 這里的是指可以讓你添加自己的第三方庫, 比如有些構件在中央倉庫是不存在的. 比如你在中央倉庫找不到Oracle 的JDBC驅動, 這個時候我們就需要自己添加到3rdparty倉庫。

  1.3  在Nexus為自己的項目手動單獨建庫

    建庫,Add-- >HostedRepository

    

    建權限

    

 

    建角色(指定權限)

    

 

    建用戶(指定角色)

    

 

  1.4  Maven倉庫組

    通過前面介紹可以了解到, 我們可以建立多個proxy代理倉庫,hosted本地倉庫, 如果沒有倉庫組的概念,我們如果需要引用這些倉庫的是時候需要一一加入到我們的setting.xml里面去, 有了倉庫的組的概念, 我們只需要做一次引用就可以了,把我們需要的倉庫加入到倉庫組即可。如下圖:

    

 

 

    倉庫組默認包含本地倉庫Releases,snapshots, 3rd party和代理倉庫MavenCentral. 你可以在Configuration配置頁添加倉庫到這個倉庫組. 如果需要你還可以創建一個倉庫組,在Repositories菜單處選add-->Repository Group即可

 

2.    項目中配置Nexus倉庫

  如果只有一個項目,可以配置在項目的pom文件中:

  

 

 

  如果有多個項目都使用Nexus的配置,可以將如上皮遏制放到Maven的Settings文件中:

  

 

3.    配置倉庫鏡像

  默認的,如果本地倉庫找不到依賴的構件,這時需要東西時先到Nexus上找,如果發現Nexus服務關閉后,會自動到中央倉庫找。

  如果我們想覆蓋中央倉庫的默認地址,強制依賴的東西都到Nexus中去找,即使Nexus關閉也不會到中央工廠去下載:

  修改Maven的Settings文件:

  

 

 

  注意,如果本地倉庫有東西,但Nexus中沒有,需要將該東西考到Nexus倉庫中,然后更新倉庫索引:

  

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM