Maven 国内镜像仓库


镜像仓库目标

当我们未定义任何远程仓库时,使用 Maven 更新依赖时,其会去默认远程仓库中拉取,默认远程仓库
是国外地址,所以在国内访问特别慢,想提升访问速度,需要将国外地址换成国内地址

更换仓库地址的方式:

1. 自定义仓库,将仓库地址设成国内地址,当 Maven 对仓库访问时直接就是国内地址了,属于从根儿上解决

2. 配置镜像仓库,当 Maven 访问仓库时会对访问进行拦截,并将目标地址替换为配置的镜像仓库地址

本文主要记录第二种方式,第一种自定义仓库的方式在我其他文章中有记载


靠谱的国内镜像仓库

  1. 阿里云镜像仓库:https://maven.aliyun.com/repository/public
  2. 华为云镜像仓库:https://mirrors.huaweicloud.com/repository/maven/
  3. 腾讯云镜像仓库:https://mirrors.cloud.tencent.com/nexus/repository/maven-public/
  4. 默认中央仓库:https://repo.maven.apache.org/maven2/

首推的是阿里云的镜像仓库地址,因为其不仅提供了镜像仓库,还提供了一个可以搜索依赖的 UI 界面 阿里云云效 Maven
除此之外,Maven 官方也提供了一个搜索依赖的 UI 界面 Maven Repository


配置镜像仓库

以阿里云镜像仓库为例,找到 Maven安装目录/conf/settings.xml,在 <mirrors> 节点下添加:

<mirror>
  <id>aliyun</id>
  <mirrorOf>central</mirrorOf>
  <name>aliyun-central</name>
  <url>https://maven.aliyun.com/repository/public</url>
</mirror>

节点解读:

  • name:随便写,就是对本段镜像配置的描述
  • url:镜像仓库地址
  • id:<mirrors> 下可以配置多个 <mirror> ,所以 <id> 要唯一,不与环境中其他 <mirror> 重复即可

其他三个属性都很容易配置,这里重点说一下 <mirrorOf> 应该怎么填:

所谓镜像仓库,就是对 Maven 更新依赖时原本要访问的仓库地址进行替换,所以 <mirrorOf> 就是指定原来仓库的
仓库ID,例子中指定 central,就是对 ID 为 central 的仓库的地址进行替换,当 Maven 向 central 仓库发起更
新请求时,会将仓库地址替换为我们此处的镜像地址

central 是 Maven 默认远程仓库的 ID,其在 超级Pom 的 <repositories> 中定义,超级Pom 位置:
Maven 安装目录/lib/maven-model-builder.jar/org/apache/maven/model/pom.xml

<mirrorOf> 除了指定仓库ID,也常见使用通配符 *,但是要慎用,因为这样配置,会对所有的仓库请求都进行拦截,
并且将地址替换成镜像仓库的地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值