如何配置Maven settings.xml使用阿里云镜像仓库实现仓库加速?
- 内容介绍
- 文章标签
- 相关推荐
本文共计717个文字,预计阅读时间需要3分钟。
很多人配了
-
mirrorOf推荐值:*(不是central,也不是external:*) - 如果必须排除某些私有仓库,才用
!repo-id, *这种排除语法,但日常开发极少需要 - 改完记得删掉
~/.m2/repository/.cache/下的元数据缓存,否则旧重定向可能还在生效
settings.xml 里 <mirror> 必须放在 <mirrors> 标签下
常见错误是把 <mirror> 直接塞进 <profiles> 或 <servers> 里,或者漏写外层 <mirrors>。Maven 只认顶层 <mirrors> 下的 <mirror>,其他位置一律忽略。
- 正确结构:根节点
<settings>→<mirrors>→<mirror> - 别在
<profile>里配 mirror——profile 里的 mirror 不生效 - 多个 mirror 时,Maven 按顺序匹配第一个
mirrorOf匹配成功的,后面的会被跳过
阿里云镜像地址要用 https://maven.aliyun.com/repository/public
网上很多教程还写着老地址 http://maven.aliyun.com/nexus/content/groups/public/,这个 HTTP 地址已停用,且不支持 HTTPS 重定向,会直接报 Connection refused 或 PKIX path building failed。
- 当前唯一有效地址:
https://maven.aliyun.com/repository/public - 别漏掉
/repository/public后缀,只写到/repository会 403 - 国内网络下,这个地址响应稳定;海外用户反而可能更慢,此时应考虑用
https://repo1.maven.org/maven2/或就近镜像
验证是否生效:看 Maven 日志里的 Downloading from aliyunmaven
运行 mvn clean compile -X(加 -X 开启 debug 日志),搜索日志中是否有 Downloading from aliyunmaven。如果看到的是 Downloading from central 或其他名字,说明配置没生效。
- 检查
settings.xml是否被正确加载:日志开头会打印Using settings file: ... - 确认没被项目级
pom.xml中的<repositories>覆盖——项目里显式定义仓库时,mirror 默认不接管 - IDE(如 IntelliJ)可能用自带的 Maven 或独立 settings 文件,要检查 IDE 的 Maven 配置路径是否指向你改的那个
settings.xml
最常被忽略的一点:公司内网环境可能有代理或白名单限制,即使 settings.xml 完全正确,https://maven.aliyun.com 也可能被防火墙拦截。这时候得找运维确认出向域名是否放行,而不是反复调配置。
本文共计717个文字,预计阅读时间需要3分钟。
很多人配了
-
mirrorOf推荐值:*(不是central,也不是external:*) - 如果必须排除某些私有仓库,才用
!repo-id, *这种排除语法,但日常开发极少需要 - 改完记得删掉
~/.m2/repository/.cache/下的元数据缓存,否则旧重定向可能还在生效
settings.xml 里 <mirror> 必须放在 <mirrors> 标签下
常见错误是把 <mirror> 直接塞进 <profiles> 或 <servers> 里,或者漏写外层 <mirrors>。Maven 只认顶层 <mirrors> 下的 <mirror>,其他位置一律忽略。
- 正确结构:根节点
<settings>→<mirrors>→<mirror> - 别在
<profile>里配 mirror——profile 里的 mirror 不生效 - 多个 mirror 时,Maven 按顺序匹配第一个
mirrorOf匹配成功的,后面的会被跳过
阿里云镜像地址要用 https://maven.aliyun.com/repository/public
网上很多教程还写着老地址 http://maven.aliyun.com/nexus/content/groups/public/,这个 HTTP 地址已停用,且不支持 HTTPS 重定向,会直接报 Connection refused 或 PKIX path building failed。
- 当前唯一有效地址:
https://maven.aliyun.com/repository/public - 别漏掉
/repository/public后缀,只写到/repository会 403 - 国内网络下,这个地址响应稳定;海外用户反而可能更慢,此时应考虑用
https://repo1.maven.org/maven2/或就近镜像
验证是否生效:看 Maven 日志里的 Downloading from aliyunmaven
运行 mvn clean compile -X(加 -X 开启 debug 日志),搜索日志中是否有 Downloading from aliyunmaven。如果看到的是 Downloading from central 或其他名字,说明配置没生效。
- 检查
settings.xml是否被正确加载:日志开头会打印Using settings file: ... - 确认没被项目级
pom.xml中的<repositories>覆盖——项目里显式定义仓库时,mirror 默认不接管 - IDE(如 IntelliJ)可能用自带的 Maven 或独立 settings 文件,要检查 IDE 的 Maven 配置路径是否指向你改的那个
settings.xml
最常被忽略的一点:公司内网环境可能有代理或白名单限制,即使 settings.xml 完全正确,https://maven.aliyun.com 也可能被防火墙拦截。这时候得找运维确认出向域名是否放行,而不是反复调配置。

