1. 程式人生 > 實用技巧 >基於nexus私服配置專案pom.xml和maven settings.xml檔案

基於nexus私服配置專案pom.xml和maven settings.xml檔案

備註:搭建nexus私服請參考上一篇文章基於Docker搭建Maven私服Nexus,Nexus詳解


一:將jar傳送到nexus私伺服器

1.pom.xml檔案新增配置

pom.xml檔案中的這個版本標籤對應結尾的(RELEASE、SNAPSHOT)將決定分配到私服的那個倉庫<version>1.0.0-RELEASE</version>

    <!--配置上傳到私服-->
    <distributionManagement>
        <repository>
            <!--id的名字可以任意取,但是在setting檔案中的屬性<server>的ID與這裡一致-->
            <id>releases</id>
            <!--指向倉庫型別為host(宿主倉庫)的儲存型別為Release的倉庫-->
            <url>http://116.62.106.24:8081/repository/boris-release/</url>
        </repository>
        <snapshotRepository>
            <id>snapshots</id>
            <!--指向倉庫型別為host(宿主倉庫)的儲存型別為Snapshot的倉庫-->
            <url>http://116.62.106.24:8081/repository/boris-snapshot/</url>
        </snapshotRepository>
    </distributionManagement>

2.maven settings.xml檔案新增配置  

 <server>
      <id>releases</id>
      <username>boris-test-nexus-repository</username>
      <password>boris</password>
    </server>
    <server>
      <id>snapshots</id>
      <username>boris-test-nexus-repository</username>
      <password>boris</password>
    </server>

然後執行命令:mvn deploy,就成功部署到私服環境了,如下是我測試的一個結果

PS:還有一種上傳jar包的方式,就是直接去nexus管理介面手動上傳

二:從nexus私服下載第三方jar包(有兩種方式)

1.方式一(pom.xml的方式)

<repositories>
        <repository>
            <id>maven-nexus-group</id>
            <url>http://116.62.106.24:8081/repository/boris-group/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>maven-nexus-group</id>
            <url>http://116.62.106.24:8081/repository/boris-group/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

由於nexus私服需要有使用者名稱和密碼登入才能訪問,需要在maven settings.xml檔案中配置,加入如下內容

    <server>
      <id>maven-nexus-group</id>
      <username>boris-test-nexus-repository</username>
      <password>boris</password>
    </server>

注意上面的server->id的值和pom.xml中repository->id的值一致,通過這個id關聯找到憑證的。

2.方式二(映象方式)

maven settings.xml檔案中配置

 <server>
      <id>maven-nexus-group</id>
      <username>boris-test-nexus-repository</username>
      <password>boris</password>
 </server>


<mirror>
      <id>maven-nexus-group1</id>
      <mirrorOf>*</mirrorOf>central
      <name>nexus boris images</name>
      <url>http://116.62.106.24:8081/repository/boris-group/</url>
 </mirror>

注意上面的server->id的值和mirror->id的值需要一致,這樣才能找到對應的憑證。

區別:方式一隻針對單個專案有效,方式二針對所有專案有效