3.4. 使用环境变量或系统属性设置 Maven 镜像
在运行应用程序时,您需要访问 Red Hat Maven 存储库中的工件。这些存储库添加到 Maven 的 settings.xml
文件中。Maven 检查 settings.xml
文件的以下位置:
- 查找指定的 url
-
如果没有找到
${user.home}/.m2/settings.xml
的查找 -
如果没有找到
${maven.home}/conf/settings.xml
的查找 -
如果未找到,则查找
${M2_HOME}/conf/settings.xml
-
如果没有找到位置,则会创建空的
org.apache.maven.settings.Settings
实例。
3.4.1. 关于 Maven 镜像
Maven 使用一组远程存储库来访问工件,这些工件目前在本地存储库中不可用。存储库列表几乎始终包含 Maven Central 存储库,但对于 Red Hat Fuse,它还包含 Maven 红帽存储库。在某些情况下,无法访问不同的远程存储库,您可以使用 Maven 镜像的机制。镜像将特定的存储库 URL 替换为不同的存储库 URL,因此搜索远程工件时的所有 HTTP 流量都可以定向到单个 URL。
3.4.2. 在 settings.xml
中添加 Maven 镜像
要设置 Maven 镜像,请在 Maven 的 settings.xml
中添加以下部分:
<mirror> <id>all</id> <mirrorOf>*</mirrorOf> <url>http://host:port/path</url> </mirror>
如果在 settings.xml
文件中找不到以上部分,则不会使用 mirror。要在不提供 XML 配置的情况下指定全局镜像,您可以使用系统属性或环境变量。
3.4.3. 使用环境变量或系统属性设置 Maven 镜像
要使用环境变量或系统属性设置 Maven 镜像,您可以添加:
-
名为 MAVEN_MIRROR_URL 的环境变量到
bin/setenv
文件 -
名为 mavenMirrorUrl to
etc/system.properties
文件的系统属性
3.4.4. 使用 Maven 选项指定 Maven 镜像 url
要使用替代的 Maven 镜像 url,在环境变量或系统属性之外,在运行应用程序时使用以下 maven 选项:
-DmavenMirrorUrl=mirrorId::mirrorUrl
for example,
-DmavenMirrorUrl=my-mirror::http://mirror.net/repository
-DmavenMirrorUrl=mirrorUrl
for example,
-DmavenMirrorUrl=http://mirror.net/repository
.在本例中,<mirror> 的 <id> 只是一个镜像(mirror)。