使用Nexus建立私服(八)
nexus的簡介和本地安裝
私服的作用:降低中央倉庫負荷、節省外網頻寬、加速maven構建、自己部署構建等。
windows安裝nexus:下載jar並解壓到指定目錄,解壓後有兩個目錄nexus-3.7.1-02、sonatype-work
nexus-3.7.1-02:該目錄包含了nexus執行所需要的檔案,如啟動指令碼、依賴jar包等。
sonatype-work:該目錄包含nexus生成的配置檔案、倉庫檔案、日誌檔案等,該目錄不用手動建立,nexus會自動建立,如果需要備份nexus,只需要備份此目錄即可,該目錄包含了使用者的特定內容,上面的目錄每個相同的版本的nexus都是一樣的。
windows啟動nexus的方式:bundle方式的啟動,需要在命令列啟動,exe檔案不能啟動成功,在命令列進入nexus的bin目錄,執行nexus.exe /run,出現started Sonatype Nexus則啟動成功,預設帳號admin/admin123
Nexus的倉庫與倉庫組
nexus包含了各種型別的倉庫概念,如:
代理倉庫(proxy)、宿主倉庫(hosted)、虛擬倉庫(virtual)、倉庫組(group)等。
代理倉庫(proxy):代理遠端倉庫,並快取依賴元件。
宿主倉庫(hosted):宿主倉庫用來組織內部部署自己的元件、中央倉庫沒有的三方主鍵。
倉庫組(group):倉庫組可以包含多個代理倉庫和宿主倉庫,提供一個單一的地址供maven專案使用,倉庫組中的多個倉庫的數序和倉庫的遍歷順序一致,請設定的時候把常用倉庫放在前面。
虛擬倉庫(virtual):虛擬型別倉庫的作用實際上是動態的將倉庫內容格式轉換,是為了服務於maven1格式。
每個倉庫有一個屬性policy(策略),表示該倉庫是釋出版本還是快照版本。
Nexus的索引與構件搜尋
nexus通過維護倉庫的索引來提供搜尋功能,設定代理倉庫的時候,要設定下載索引檔案,才可以使用搜索功能。
nexus也可以為宿主和代理倉庫建立索引,在倉庫右鍵選擇reIndex.
對於代理倉庫,nexus會掃描所有快取的構件生成索引,如果遠端有索引則下載到本地與本地生成的合併。
倉庫組會合幷包含的所有倉庫的索引提供搜尋服務。
maven下載構件的時候,先檢查central是否支援構建的版本型別,如快照、釋出,然後在走映象地址去獲取。