Maven私有倉庫搭建和使用


下載和安裝

下載地址

http://www.sonatype.com/nexus-repository-oss

安裝:

Linux版的無需安裝,直接解壓即可,然后進入bin目錄下,運行./nexus start,啟動服務

用戶界面

在地址欄里輸入服務IP地址和8081端口就可以打開用戶界面,例如http://192.168.2.1:8081

點Sign In登錄管理頁面,用戶名密碼為,admin和admin123

在Repositories頁面里顯示着,默認已經創建了5個倉庫(2個為group),直接可以拿來用,無需再自行創建倉庫。

使用方法

搭建Maven私有倉庫的主要目的,是為了在團隊多人開發時,只要內網的私有倉庫有下載過依賴的jar包,就直接從私有倉庫獲取,不再通過外網的中央倉庫,畢竟外網的下載速度實在是太慢了。

在項目的pom.xml或者settings.xml文件里加入一下配置信息(區別,pom.xml是針對當前項目,settings.xml是全局的針對所有項目)

配置信息中的id,name和url跟上圖中的倉庫對應,type為proxy,說明它只是代理,只能用於下載jar包,不能用於發布項目。

<repositories>
    <repository>
        <id>maven-central</id>
        <name>maven-central</name>
        <url>http://192.168.204.132:8081/repository/maven-central/</url>
        <layout>default</layout>
        <snapshotPolicy>always</snapshotPolicy>
         <releases>
            <enabled>true</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>

如果想把自己的項目發布到私有倉庫中,可以用另外兩個倉庫,release和snapshots,至於這兩個有啥區別,說白了就是,在版本號后面加“-SNAPSHOTS“”就自動發布到snapshots,不加的話就發布到releases

發布到倉庫的命令是mvn clean deploy

    <distributionManagement>
        <repository>
            <id>maven-releases</id>
            <name>maven-releases</name>
            <url>http://192.168.204.132:8081/repository/maven-releases/</url>
        </repository>
        <snapshotRepository>
            <id>maven-snapshots</id>
            <name>maven-snapshots</name>
            <url>http://192.168.204.132:8081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

 其他使用細節

如果用的是eclipse,在settings.xml的配置如下

<profile>
      <id>localMaven</id>

      <activation>
        <jdk>localMaven</jdk>
      </activation>

      <repositories>
        <repository>
          <id>maven-central</id>
          <name>maven-central</name>
          <url>http://192.168.204.132:8081/repository/maven-central/</url>
          <layout>default</layout>
          <snapshotPolicy>always</snapshotPolicy>
          <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
      </repositories>
    </profile>

這時候記得在eclipse里選擇對應的profile


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM