7.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
实例。
7.4.1. 关于 Maven 镜像
Maven 使用一组远程存储库访问工件,它们目前在本地存储库中不可用。存储库列表几乎总是包含 Maven Central 软件仓库,但对于 Red Hat Fuse,它还包含 Maven 红帽软件仓库。在某些情况下,如果无法访问不同的远程存储库,也可以使用 Maven 镜像机制。镜像替代了特定的存储库 URL,因此当搜索远程工件到单个 URL 时,所有 HTTP 流量都会定向到单个 URL。
7.4.2. 在 settings.xml
中添加 Maven mirror
要设置 Maven 镜像,请将以下内容添加到 Maven 的 settings.xml
中:
<mirror> <id>all</id> <mirrorOf>*</mirrorOf> <url>http://host:port/path</url> </mirror>
如果在 settings.xml
文件中找不到上述部分,则不使用该镜像镜像。要在不提供 XML 配置的情况下指定全局镜像,您可以使用系统属性或环境变量。
7.4.3. 使用环境变量或系统属性设置 Maven 镜像
要使用环境变量或系统属性设置 Maven 镜像,您可以添加:
-
为
bin/setenv
文件调用 MAVEN_MIRROR_URL 的环境变量 -
名为 mavenMirrorUrl 的系统属性到
etc/system.properties
文件
7.4.4. 使用 Maven 选项指定 Maven 镜像 url
要使用备用的 Maven 镜像 url,除了由环境变量或系统属性指定的其他属性外,在运行应用程序时使用以下 maven 选项:
-DmavenMirrorUrl=mirrorId::mirrorUrl
例如,
-DmavenMirrorUrl=my-mirror::http://mirror.net/repository
-DmavenMirrorUrl=mirrorUrl
例如,
-DmavenMirrorUrl=http://mirror.net/repository
。在本例中,<mirror> 的 <id> 只是一个镜像。