Maven 镜像
仅替换 Maven Central,保留项目私有仓库与发布设置。
配置前请确认服务与版本适用性,并备份原有软件源配置。
适用范围
maven 为 Maven 仓库入口。配置镜像用于依赖解析,不会修改项目 distributionManagement 的发布目标。
settings.xml
备份 ~/.m2/settings.xml,Windows 通常为 %USERPROFILE%\.m2\settings.xml。在已有 <settings> 中合并下面 <mirrors>;已有镜像配置时不要重复创建同名节点。
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 https://maven.apache.org/xsd/settings-1.0.0.xsd">
<mirrors>
<mirror>
<id>cernet-central</id>
<name>CERNET Maven Central</name>
<url>https://mirrors.cernet.edu.cn/maven/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
</settings>
mirrorOf 限定 central,不使用 * 把公司仓库、插件专用仓库或 snapshots 一并重定向。保留原 <servers> 等配置,认证信息不应发送给公共镜像。
验证
在 Maven 项目内执行:
mvn help:effective-settings
mvn dependency:resolve
检查日志中的 cernet-central 和实际下载地址。本地 .m2/repository 已有缓存时不会重新下载,这是正常行为,不需要删除全部缓存。
恢复与范围限制
移除新增 <mirror> 或恢复备份。Gradle 不读取 Maven 的 settings.xml,需要在 Gradle 项目中单独配置仓库;Gradle Wrapper 发行包也与 Maven Central 不同。
找不到制品时先确认坐标、版本是否发布到 Central。私有制品与未同步的新版本不能靠反复清空缓存解决。