【原創】Nexus搭建Maven私服

前言:

  公司通常都有個本身的私服來管理各類jar包,緣由大概有這麼3個,分別是:windows

    一、有的公司不能訪問外網,只能經過私服來管理jar包和插件;安全

    二、公司網速比較慢,經過公司的私服來獲取jar包比較快;eclipse

    三、內部的的一些jar包放在私服上,比較方便的你們使用。學習

  這裏簡單介紹下搭建Nexus環境,而且在eclipse mvn插件環境下來上傳jar包。url

Nexus環境搭建:

   說明:這裏是Windows環境,Linux相似。spa

  一、下載Nexus安裝文件:http://www.sonatype.org/nexus/go ,目前是nexus-2.13.0-01-bundle.tar.zip這個最新版本;.net

  二、解壓到任意目錄,我這裏解壓到E盤,進入E:\nexus-2.13.0-01\bin\jsw\windows-x86-64,點擊install-nexus.bat安裝成爲windows服務,這裏選擇本身計算機對應的文件;插件

  三、訪問http://localhost:8081/nexus/,這就是私服;3d

  四、點擊右上角登陸,默認賬號admin,密碼admin123;code

  五、點擊左邊Repositories,能夠看到一系列倉庫類型,咱們通常使用3個,分別是Releases,Snapshots和3rd party。這3個倉庫風別是裝穩定版,開發版和第三方jar包 。

  

  六、舉例,手動上傳一個jar到Releases倉庫裏面。

   

  七、上面是手動方式,另一種是利用mvn直接發佈到私服上面來,須要修改2個地方,第一是在settings文件的servers節點下加入,這是配置私服的密碼和倉庫,配合pom文件中的倉庫地址就構成了完成的訪問私服的要素,賬號和密碼之因此在settings中設置,是因爲settings文件是本地的,而pom.xml文件是公共的,不安全,因此放在settings中:

<server>
      <id>nexus-releases</id>
      <username>admin</username>
      <password>admin123</password>
    </server>

    <server>
        <id>nexus-snapshots</id>
        <username>admin</username>
        <password>admin123</password>
    </server>

  第二是在pom.xml中增長,下面的id和settings中的id必需要同樣。

    <distributionManagement>
        <repository>
            <id>nexus-release</id>
            <name>Nexus Release Repository</name>
            <url>http://localhost:8081/nexus/content/repositories/release/</url>
        </repository>
        <snapshotRepository>
            <id>nexus-snapshots</id>
            <name>Nexus Snapshot Repository</name>
            <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

  上面的私服兩個倉庫的url從什麼地方獲取呢?以下圖:

  

  八、新建一個mvn項目,

    一、運行source:jar在target下生成源碼jar包;

    二、運行deploy,class的jar包發佈到私服;

    三、運行source:jar deploy,連同源碼一塊兒發佈到私服。

  九、完成,在其餘項目中可使用上面的jar包了。

  十、a.貼兩個之前遇到過的小異常過來,在eclipse中配置mvn的時候能夠分別配置mvn的目錄和settings文件,不過最好是兩者是同一個版本的,否則有可能就會出問題。

     b.咱們有時候明明<dependency>沒寫錯,卻恰恰各類報錯,能夠刪掉本地對應的jar,從新下載,就ok了。

  十一、學習建議:mvn這個東西,就是難者不會,會者不難。基本上按照這樣一個路線就問題不大,基本使用 => 瞭解繼承/聚合 => 瞭解jar包衝突機制,並解決衝突 =>瞭解mvn的3個默認聲明週期 ,生命週期的各個階段phase ,各個階段的目標goal => mvn的插件開發 => Nexus私服搭建及其使用。大體這樣一個過程下來,就能很是熟悉mvn,若是在稍微看看mvn的源碼,大體看一看,基本上能夠說是精通mvn了。

 

 《Nexus3.x.x上傳第三方jar》參考:http://blog.csdn.net/iopfan/article/details/71107686

相關文章
相關標籤/搜索