記錄maven配置



<!-- 本文件從 maven 中複製過來修改,頭文件信息與當前 maven 版本保持一致 -->
<settings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

<!-- 用戶級配置主要有4部分內容 -->
<!-- 1 : profiles 倉庫 URL 地址及使用方式,本身只是一個配置,需要在 activeProfiles 中激活方能生效 -->
<!-- 2 : activeProfiles 用於激活相應 profile -->
<!-- 3 : mirrors 鏡像設置,對倉庫地址重定向, mirrorOf 與 profile 中 repository id 對應才能生效 -->
<!-- 4 : servers 服務器驗證信息, maven 中需要登錄的 URL 均在此進行驗證信息配置 -->

<!-- PS1 : 由於 nexus 私服的使用,原則上,所有倉庫都已配置到 nexus 中交由 nexus 管理。
因此,profile 配置的 repository url 可直接指向了 nexus 倉庫地址。
實際上,這時候如果 server 中的 id 設置爲與 repository id 一致,並且驗證信息也是該倉庫的驗證信息,
那麼 mirrors 的配置可以去除了。
不過,爲了使得結構比較完整,大多數時候保留 mirrors 配置,
所以會看到profile 與 mirror 的 倉庫 URL 重複配置的情況. -->
<!-- PS2 : server id 是指向與該 id 相同的倉庫,沒有 mirror id 匹配 就會搜索 profile repository id ,
配置的是該 repository 的驗證信息;
有 mirror id 匹配的時候,server 會匹配 mirror 配置的倉庫地址,
對應的,配置的驗證信息也是該 mirror 倉庫的驗證信息.
因此,在有 mirror 配置的時候, mirror id 與 mirrorOf 不能設置爲相同的值,
否則, mirror id 、mirrorOf 裏面設置的是 repository id,
這樣會導致 server id 混淆到底是匹配 mirror id 還是 repository id . -->

<!-- 倉庫配置,僅僅配置,本身不會生效,配置項 profile 的 id 與下文 activeProfiles 配置一致時激活生效 -->
<profiles>
<profile>
<!-- 配置項 profile id -->
<id>nexus-repositories</id>
<!-- 構建倉庫 -->
<repositories>
<repository>
<!-- 可自定義, repository id -->
<id>central</id>
<url>http://127.0.0.1:8081/nexus/content/repositories/central/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</repository>

<repository>
<id>IRepo</id>
<url>http://127.0.0.1:8081/nexus/content/repositories/IRepo/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
<snapshots>
<enabled>false</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</repository>
<repository>
<id>Thirdparty</id>
<url>http://127.0.0.1:8081/nexus/content/repositories/Thirdparty/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
<snapshots>
<enabled>false</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</repository>
</repositories>
<!-- 插件倉庫 -->
<pluginRepositories>
<pluginRepository>
<!-- 可自定義 pluginRepository id -->
<id>centralPlugin</id>
<url>http://127.0.0.1:8081/nexus/content/repositories/central/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>

<!-- The official thirdparty nexus repository configuration -->
<!-- begin -->
<profile>
<id>maven-restlet</id>
<repositories>
<repository>
<id>maven-restlet</id>
<url>http://127.0.0.1:8081/nexus/content/repositories/maven-restlet/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</repository>
</repositories>
</profile>
<!-- end -->

</profiles>

<!-- 激活倉庫使用配置項。activeProfile 與 倉庫使用配置中 profile id 一致時該配置項激活生效 -->
<activeProfiles>
<activeProfile>nexus-repositories</activeProfile>

<!-- The official thirdparty nexus repository configuration -->
<!-- begin -->
<activeProfile>maven-restlet</activeProfile>
<!-- end -->
</activeProfiles>

<!-- 鏡像配置,爲 profile 配置的倉庫建立鏡像地址,重新指向一個新的 URL .一般配合 nexus 私服使用 -->
<mirrors>
<!-- 鏡像服務器配置 -->
<mirror>
<!-- 可自定義,當鏡像需要賬戶驗證時, 此處 id 與下文 server 的 id 一致時建立關係完成驗證關係 -->
<id>centralId</id>
<!-- 鏡像使用方式配置,此處 mirrorOf 與 profile 中的 repository id 一致時建立對應關係 -->
<!-- mirrorOf 有正則配置以滿足不同需求,具體不贅述 -->
<!-- 當前配置:所有訪問 repository id 爲 central的倉庫的請求均重新指向本鏡像地址 -->
<mirrorOf>central</mirrorOf>
<!-- 鏡像 URL 地址 -->
<url>http://127.0.0.1:8081/nexus/content/repositories/central/</url>
</mirror>
<mirror>
<id>centralPluginId</id>
<mirrorOf>centralPlugin</mirrorOf>
<url>http://127.0.0.1:8081/nexus/content/repositories/central/</url>
</mirror>

<mirror>
<id>IRepoId</id>
<mirrorOf>IRepo</mirrorOf>
<url>http://127.0.0.1:8081/nexus/content/repositories/IRepo/</url>
</mirror>
<mirror>
<id>ThirdpartyId</id>
<mirrorOf>Thirdparty</mirrorOf>
<url>http://127.0.0.1:8081/nexus/content/repositories/Thirdparty/</url>
</mirror>

<!-- The official thirdparty nexus repository configuration -->
<!-- begin -->
<mirror>
<id>mavenRestletId</id>
<mirrorOf>maven-restlet</mirrorOf>
<name>maven-restlet</name>
<url>http://127.0.0.1:8081/nexus/content/repositories/maven-restlet/</url>
</mirror>
<!-- end -->
</mirrors>

<servers>
<!-- 倉庫登錄賬戶配置,其中 id 與 mirror 的 id 一致時建立對應關係,完成該鏡像地址的賬戶驗證 -->
<server>
<id>centralId</id>
<username>admin</username>
<password>1</password>
</server>
<server>
<id>centralPluginId</id>
<username>admin</username>
<password>1</password>
</server>

<server>
<id>IRepoId</id>
<username>admin</username>
<password>1</password>
</server>
<server>
<id>ThirdpartyId</id>
<username>admin</username>
<password>1</password>
</server>

<!-- The official thirdparty nexus repository configuration -->
<!-- begin -->
<server>
<id>mavenRestletId</id>
<username>admin</username>
<password>1</password>
</server>
<!-- end -->

</servers>



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