免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
使用Nexus2.x為Maven3.x搭建私服構(gòu)件倉庫

前言

在筆者的前一篇博文《Use Maven3.x》中,筆者詳細(xì)的講解了如何通過使用Maven3.x來構(gòu)建管理你的項目。其中筆者提到過些關(guān)于私服的概念,但卻沒有明確的對私服做出詳細(xì)的闡述,別著急,這便是你看筆者本篇博文的目的。

不知大家是否還有印象,Maven的本地倉庫中所包含的構(gòu)件全部來源于Maven的中央倉庫,這個中央倉庫是針對全世界的,也就是說全世界基于Mavem的項目都可以共同使用這個對外開放的中央倉庫。

本篇博文筆者將詳細(xì)針對Maven的本地倉庫、私服倉庫及中央倉庫進行詳細(xì)的講解,但是在開始講解之前,筆者希望大家先弄明白這3個倉庫之間彼此的依賴關(guān)系。

 

在正式開始講解本章之前,希望大家首先耐下心來聽筆者講解一個故事

人物:小張、媽媽、經(jīng)銷商(小偉)、生產(chǎn)商(小紅);

情節(jié):小張買鹽;

 

故事內(nèi)容:

有一天小張的媽媽看見家里沒有鹽了,于是就叫小張去樓下的小賣部去買一包鹽,小張拿著3.5元錢高高興興的下樓了,但是來到經(jīng)銷商小偉的店里卻被告知鹽已經(jīng)賣完了,這是小張心情有些低落,但小偉告訴小張,你不要著急,我等下便去生產(chǎn)商小紅那里去批發(fā)一箱回來,小張一聽頓時來勁了,大約等了半個小時后(筆者不知道小張媽媽油鍋里的菜炒得如何了),生產(chǎn)商小紅騎著電動車,拉著一箱鹽來到了經(jīng)銷商小偉的店里,小偉對小張說,拿去吧,鹽來了。最后小張拿著鹽高高興興的回家去了。

 

上述故事雖然無聊但卻和咱們本章的內(nèi)容息息相關(guān),為什么這么說呢?注意看,假設(shè)咱們現(xiàn)在要使用Maven來構(gòu)建咱們的項目,Maven首先會去哪里尋找與項目相關(guān)的構(gòu)件呢?沒錯就是本地倉庫中,但本地倉庫中并沒有咱們需要的構(gòu)件時,Maven就會選擇去私服倉庫尋找,假設(shè)私服倉庫也沒有咱們項目需要的構(gòu)件時,則會去請求中央倉庫,最后逐一返回(注意:并不是由中央倉庫直接返回給本地倉庫)。

 

或許有很多朋友有一個共同的疑問,為什么需要使用私服倉庫呢?就算沒有私服倉庫,Maven不是也能和中央倉庫建立關(guān)聯(lián),然后下載所需構(gòu)件嗎?這豈不是多此一舉?

為什么要為自己的Maven項目搭建私服倉庫呢?原因有如下3點:

 

1、我們應(yīng)該盡可能的降低對Maven中央倉庫的負(fù)載;

2、我們需要統(tǒng)一管理規(guī)范我們項目所需的構(gòu)件版本;

3、如果你所在的企業(yè)并不允許使用外網(wǎng),那么你的項目將變得異常被動

4、我們在很多時候需要節(jié)約那狗血的帶寬流量;

 

請大家仔細(xì)觀察Maven本地倉庫、私服倉庫及中央倉庫之間的關(guān)聯(lián)流程圖

 

 

一、下載與安裝Nexus

 

想為Maven搭建私服,我們可以選擇使用Nexus工具,該工具目前的最新版本為2.2.0(本文將采用最新版本),其下載地址為:http://www.sonatype.org/nexus/go

 

 

當(dāng)我們成功下載好Nexus后,可以將其解壓。在nexus-2.2-01-bundle\nexus-2.2-01\bin\jsw\windows-x86-32目錄中我們找到console-nexus.bat文件(你可以選擇對應(yīng)的操作平臺的啟動文件),雙擊即可啟動Nexus:

 

 

通過上圖我們可以發(fā)現(xiàn),Nexus服務(wù)器缺省的訪問端口為8081(如果你需要修改缺省端口,你可以找到\nexus-2.2-01-bundle\nexus-2.2-01\conf目錄下的nexus.properties文件,指定application-port屬性為你的指定端口即可),接下來我們可以在瀏覽器中輸入http://127.0.0.1:8081/nexus/查看Nexus是否成功啟動:

 

 

通過上圖我們可以發(fā)現(xiàn)我們已經(jīng)成功的啟動了Nexus,那么接下來要做的事情就更有意思了,在后續(xù)章節(jié)中筆者會陸續(xù)講到應(yīng)該如何使用Nexus工具來配置和管理咱們的私服倉庫。

 

二、倉庫類型 

在上一章節(jié)中,筆者講解了如何下載與安裝Nexus工具。那么本章節(jié)咱么來看看如何使用Nexus工具配置和管理私服倉庫。當(dāng)然在使用Nexus之前你是需要登錄的,缺省賬號密碼為:

account:admin;

password:admin123;

 

當(dāng)成功登錄后,你可以單擊 Repositories屬性看到如下頁面:

 

 

由于admin這個賬號是屬于Administrator權(quán)限的,你也可以通過單擊Security屬性進行賬戶的配置:

 

 

Nexus的倉庫類型一共有4種,每一種倉庫類型均對應(yīng)有不同的操作方式:

1、group: 倉庫組;

2、hosted:宿主;

3、proxy:代理;

4、virtual:虛擬;

來吧,咱們先談?wù)?strong>倉庫組這個概念,一個倉庫組類似一個倉庫集合,它和倉庫之間是一對多的關(guān)系,也就是說一個倉庫組可以允許包含多個倉庫,Nexus倉庫用例圖如下:

 

 

 


在咱們弄明白倉庫組的作用后,咱們接著來看宿主倉庫是干什么的。其實所謂宿主倉庫可以理解為自定義倉庫,用于存放一些在中央倉庫無法下載的構(gòu)件,比如自定義構(gòu)件你可以手動將自定義構(gòu)件上傳至hosted中。

 

代理倉庫起到的作用是代理作用,假設(shè)本地倉庫向私服進行請求時,首先會去私服倉庫的本地路徑中尋找構(gòu)件,如果沒有找到則會從中央倉庫進行下載。

 

虛擬倉庫省略...

 

 三、使用Nexus管理私服倉庫

 

在了解Nexus的4種倉庫類型后,咱們接下來要做的事情就是使用Nexus工具來管理咱們的私服倉庫。先來看看Nexus為我們提供的一些缺省倉庫:

 

 

 

從上圖我們可以看出Nexus缺省為我們定義了1個倉庫組,7個倉庫。當(dāng)中最主要的幾個倉庫為:

 

 

3rd party(宿主倉庫):用于存放一些在中央倉庫無法下載的構(gòu)件倉庫;

Apache Snapshots(代理倉庫):代理ApacheMaven倉庫快照版本的構(gòu)件倉庫;

Central(代理倉庫):代理Maven中央倉庫中發(fā)布版本構(gòu)件的倉庫;

 

當(dāng)然你可以根據(jù)項目需要新建倉庫組及倉庫,但在建立這些私有的倉庫之前,咱們還是先來看看如何使用Nexus為咱們提供的缺省構(gòu)件倉庫(其實很多時候你真沒必要去新建倉庫)。

 

選擇Public Repositories分組,單擊configuration選項,你可以為倉庫組添加對應(yīng)的倉庫:

 

 

單擊Save按鈕保存即可配置完成。這里有一點需要提醒大家的是,倉庫的添加順序直接決定了構(gòu)件的下載順序,換句話來說我們應(yīng)該把需要從中央倉庫或者其他遠(yuǎn)程倉庫下載構(gòu)件的代理倉庫添加在最后。

 

當(dāng)咱們成功將指定的倉庫集合添加進倉庫組后,接下來我們來為3rd party(宿主倉庫)上傳自定義構(gòu)件,所謂自定義構(gòu)件指的是無法從Maven的中央倉庫進行下載的構(gòu)建。

筆者在此選用的是最簡單方便的手動上傳構(gòu)件(當(dāng)然上傳構(gòu)件至宿主倉庫還有一些方式,但筆者還是側(cè)重于最簡便的方式)。

 

單擊3rd party(宿主倉庫)的Artifact Upload選項,我們首先來上傳一個基于Maven項目的自定義構(gòu)件:

 

 

最后別忘記了添加構(gòu)件:

 

 

 

如果你的構(gòu)件不是基于Maven的呢?那么你可以選擇GAV Parameters屬性:

 

 

其實按照上述步驟,咱們就已經(jīng)成功將自定義構(gòu)件上傳至宿主倉庫中了。那么接下來我們是不是應(yīng)該讓Maven的本地倉庫來連接私服倉庫試試構(gòu)件能否正常下載呢?

 

來吧,找到你本地Maven的setting.xml文件,我們需要修改如下幾個屬性來指定Maven下載構(gòu)件的地址為私服倉庫路徑而非中央倉庫。

 

配置倉庫屬性:

<profiles> <profile> <id>myprofile</id> <repositories> <repository> <id>central</id> <url>http://central</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>central</id> <url>http://central</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </pluginRepository> </pluginRepositories> </profile> </profiles>

 

 

  

 

 激活profile:

 

<activeProfiles> <activeProfile>myprofile</activeProfile> </activeProfiles>

 

 

 

配置鏡像:

 

<mirrors> <mirror> <id>nexus</id> <url>倉庫組或者倉庫路徑</url> <mirrorOf>*</mirrorOf> </mirror> </mirrors>

 

 

 

 

如果你和筆者一樣使用的是Spring Tool Suite(基于eclipse二次開發(fā)的IDE),那么你需要將m2e自帶的setting.xml文件路徑更改為Maven本地的setting.xml文件路徑。

 

 

替換完setting.xml配置文件后,我們打開菜單欄的Show View選擇Meven Repositories視窗查看Maven下載構(gòu)件倉庫的位置:

 

 

通過下圖我們可以看見,我們已經(jīng)成功將Maven的構(gòu)件下載路徑從中央倉庫改為了私服倉庫:

 

 

 關(guān)于Maven及Nexus的相關(guān)內(nèi)容筆者已經(jīng)全部闡述完畢,謝謝各位賞臉觀看。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
[轉(zhuǎn)]Maven與nexus關(guān)系
配置nexus倉庫
Maven部署構(gòu)件至遠(yuǎn)程倉庫
第八節(jié):Maven搭建Nexus私服與權(quán)限管理
Sonatype Nexus 搭建Maven 私服
maven--私服的搭建(Nexus的使用)和注意的問題
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服