Java開發學習(三十三)----Maven私服(一)私服簡介安裝與私服分類

一、私服簡介

團隊開發現狀分析

(1)張三負責ssm_crm的開發,自己寫了一個ssm_pojo模塊,要想使用直接將ssm_pojo安裝到本地倉庫即可

(2)李四負責ssm_order的開發,需要用到張三所寫的ssm_pojo模塊,這個時候如何將張三寫的ssm_pojo模塊交給李四呢?

(3)如果直接拷貝,那麼團隊之間的jar包管理會非常混亂而且容器出錯,這個時候就想能不能將寫好的項目上傳到中央倉庫,誰想用就直接聯網下載即可

(4)Maven的中央倉庫不允許私人上傳自己的jar包,那麼我們就得換種思路,自己搭建一個類似於中央倉庫的東西,把自己的內容上傳上去,其他人就可以從上面下載jar包使用

(5)這個類似於中央倉庫的東西就是我們接下來的私服

所以到這就有兩個概念,一個是私服,一個是中央倉庫

私服:公司內部搭建的用於存儲Maven資源的服務器

遠程倉庫:Maven開發團隊維護的用於存儲Maven資源的服務器

所以說:

  • 私服是一臺獨立的服務器,用於解決團隊內部的資源共享與資源同步問題

搭建Maven私服的方式有很多,我們來介紹其中一種使用量比較大的實現方式:

二、私服安裝

步驟1:下載解壓

latest-win64.zip解壓到一個空目錄下。

步驟2:啓動Nexus

使用cmd進入到解壓目錄下的nexus-3.30.1-01\bin,執行如下命令:

nexus.exe /run nexus

注意:啓動如果報如下錯誤的話可能是路徑含有中文,修改一下路徑即可

啓動時間稍微有點長,稍微等一下,看到如下內容,說明啓動成功。

步驟3:瀏覽器訪問

訪問地址爲:

http://localhost:8081

步驟4:首次登錄重置密碼

用戶名爲admin,密碼爲路徑所在的文件內容

輸入用戶名和密碼進行登錄,登錄成功後,出現如下頁面

點擊下一步,需要重新輸入新密碼,這裏把密碼修改爲admin

設置是否運行匿名訪問

點擊完成

至此私服就已經安裝成功。如果要想修改一些基礎配置信息,可以使用:

  • 修改基礎配置信息

    • 安裝路徑下etc目錄中nexus-default.properties文件保存有nexus基礎配置信息,例如默認訪問端口。

  • 修改服務器運行配置信息

    • 安裝路徑下bin目錄中nexus.vmoptions文件保存有nexus服務器啓動對應的配置信息,例如默認佔用內存空間。

三、私服倉庫分類

私服資源操作流程分析:

(1)在沒有私服的情況下,我們自己創建的服務都是安裝在Maven的本地倉庫中

(2)私服中也有倉庫,我們要把自己的資源上傳到私服,最終也是放在私服的倉庫中

(3)其他人要想使用你所上傳的資源,就需要從私服的倉庫中獲取

(4)當我們要使用的資源不是自己寫的,是遠程中央倉庫有的第三方jar包,這個時候就需要從遠程中央倉庫下載,每個開發者都去遠程中央倉庫下速度比較慢(中央倉庫服務器在國外)

(5)私服就再準備一個倉庫,用來專門存儲從遠程中央倉庫下載的第三方jar包,第一次訪問沒有就會去遠程中央倉庫下載,下次再訪問就直接走私服下載

(6)前面在介紹版本管理的時候提到過有SNAPSHOTRELEASE,如果把這兩類的都放到同一個倉庫,比較混亂,所以私服就把這兩種jar包放入不同的倉庫

(7)上面我們已經介紹了有三種倉庫,一種是存放SNAPSHOT的,一種是存放RELEASE還有一種是存放從遠程倉庫下載的第三方jar包,那麼我們在獲取資源的時候要從哪個倉庫種獲取呢?

(8)爲了方便獲取,我們將所有的倉庫編成一個組,我們只需要訪問倉庫組去獲取資源。

所有私服倉庫總共分爲三大類:

宿主倉庫hosted

  • 項目小組內自己使用的

  • 保存無法從中央倉庫獲取的資源

    • 自主研發

    • 第三方非開源項目,比如Oracle,因爲是付費產品,所以中央倉庫沒有

代理倉庫proxy

  • 代理遠程倉庫,通過nexus訪問其他公共倉庫,例如中央倉庫,或者阿里雲等私服倉庫

  • 所有項目組(整個公司)公用同一個代理倉庫

倉庫組group

  • 將若干個倉庫組成一個羣組,簡化配置

  • 倉庫組不能保存資源,屬於設計型倉庫

  • 每個項目會有一個倉庫組,項目小組內共享

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章