Nexus倉庫屬性和分類

Nexus 作為一款 Maven 倉庫管理器,倉庫(Repository)自然是 Nexus 最核心的概念。Nexus 中提供了許多倉庫概念,如代理倉庫、宿主倉庫以及倉庫組等。Nexus 為每一種倉庫都提供了豐富的配置參數,方便我們根據自身需要進行定制。

Nexus 倉庫屬性

點擊左邊導航欄中的 Repositories,可以看到 Nexus 自帶的幾個內置倉庫,如下圖所示。

Nexus 內置倉庫列表
Nexus 內置倉庫列表

在倉庫列表中,每個倉庫都具有一系列屬性:

  • Type:倉庫的類型,Nexus 中有 4 中倉庫類型:group(倉庫組)、hosted(宿主倉庫)、proxy(代理倉庫)以及 virtual(虛擬倉庫)。

  • Format:倉庫的格式。

  • Policy:倉庫的策略,表示該倉庫是發(fā)布(Release)版本倉庫還是快照(Snapshot)版本倉庫。

  • Repository Status:倉庫的狀態(tài)。

  • Repository Path:倉庫的路徑。

由圖 1 可知,Nexus 2.x 默認創(chuàng)建了 6 個倉庫,我們稱它們?yōu)?Nexus 內置倉庫。

  • Maven Central:該倉庫用來代理 Maven 中央倉庫,其策略為 Release,只會下載和緩存中央倉庫中的發(fā)布版本的構件。

  • Releases:策略為 Release 的宿主倉庫,用來部署公司或組織內部的發(fā)布版本構件。

  • Snapshots:策略為 Snapshot 的宿主倉庫,用來部署公司或組織內部的快照版本構件。

  • 3rd party:策略為 Release 的宿主倉庫,用來部署第三方發(fā)布版本構件,這些構件一般無法從任何遠程倉庫中獲得。

  • Public Repositories:該倉庫組將上述所有存儲策略為 Release 的倉庫聚合并通過統一的地址提供服務。

Nexus 倉庫分類

Nexus 倉庫按照類型(Type)區(qū)分,主要分為以下 3 個類型:

  • 代理倉庫(proxy):用來代理遠程公共倉庫,如 Maven 中央倉庫、JBoss 遠程倉庫。

  • 宿主倉庫(hosted):又稱 Nexus 本地倉庫,該倉庫通常用來部署本地項目所產生的構件。

  • 倉庫組(group):用來聚合代理倉庫和宿主倉庫,為這些倉庫提供統一的服務地址,以便 Maven 可以更加方便地獲得這些倉庫中的構件。

為了更加直觀的理解倉庫組、代理倉庫和宿主倉庫的概念,我們通過下圖展示它們的用途和區(qū)別。

Nexus倉庫分類
Nexus倉庫分類

由上圖可知:

  • Maven 可以直接從宿主倉庫中下載構件。

  • Maven 也可以從代理倉庫中下載構件,代理倉庫會從遠程倉庫下載并緩存構件。

  • Maven 還可以從倉庫組中下載構件,倉庫組會從其包含的宿主倉庫和代理倉庫中獲取構件。

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清