Skip to content

Maven / Gradle 换阿里云源加速依赖下载

Java 项目构建慢,基本卡在从 Maven 中央仓库(海外)拉依赖。换成阿里云镜像即可提速。Gradle 项目还要单独给 Gradle 本体换镜像。

一、Maven 换源(settings.xml)

编辑 ~/.m2/settings.xml(没有就新建),在 <mirrors> 里加阿里云:

xml
<settings>
  <mirrors>
    <mirror>
      <id>aliyun</id>
      <mirrorOf>*</mirrorOf>
      <name>Aliyun Maven</name>
      <url>https://maven.aliyun.com/repository/public</url>
    </mirror>
  </mirrors>
</settings>

<mirrorOf>*</mirrorOf> 表示所有仓库请求都走阿里云。之后 mvn install 即走镜像。

二、Gradle 换依赖源

方式 A:项目里改 build.gradlerepositories:

groovy
repositories {
    maven { url 'https://maven.aliyun.com/repository/public' }
    maven { url 'https://maven.aliyun.com/repository/google' }   // Android 项目需要
    mavenCentral()
}

方式 B(推荐,全局生效):新建 ~/.gradle/init.gradle:

groovy
allprojects {
    repositories {
        mavenLocal()
        maven { url 'https://maven.aliyun.com/repository/public' }
        maven { url 'https://maven.aliyun.com/repository/google' }
        mavenCentral()
    }
}

全局配置对所有 Gradle 项目生效,不用改每个项目。

三、给 Gradle 本体换镜像(下载 gradle 慢)

Gradle Wrapper 会下载指定版本的 Gradle 本体,默认从 services.gradle.org(慢)。改 gradle/wrapper/gradle-wrapper.properties:

properties
distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-8.10-bin.zip

把版本号换成你项目用的。腾讯云镜像同步了各版本 Gradle 发行包。

四、常用阿里云仓库地址

用途地址
综合(central + jcenter)https://maven.aliyun.com/repository/public
Google(Android)https://maven.aliyun.com/repository/google
Springhttps://maven.aliyun.com/repository/spring
Gradle Pluginhttps://maven.aliyun.com/repository/gradle-plugin

五、验证

bash
# Maven:观察依赖是否从 aliyun 下载
mvn clean install

# Gradle:看 build 日志的下载地址
./gradlew build --info

常见问题

Q:换了还是从 central 下?

  • Maven 检查 settings.xml 位置(用户级 ~/.m2/ 或全局 $M2_HOME/conf/)。
  • Gradle 项目里的 settings.gradle 若用了 dependencyResolutionManagement { repositoriesMode = FAIL_ON_PROJECT_REPOS },要在 settings.gradledependencyResolutionManagement.repositories 里配镜像,而非 build.gradle。

Q:Android 依赖(com.android.*)拉不到? 必须加上 google 仓库镜像(见方法二)。Android 相关还可看 Android SDK 下载慢

小结

  • Maven 改 ~/.m2/settings.xml 的 mirror;Gradle 用 ~/.gradle/init.gradle 全局配。
  • Gradle 本体单独在 gradle-wrapper.properties 换腾讯镜像。
  • Android 项目务必带上 google 仓库镜像。

本文仅供技术学习与研究,请遵守所在国家/地区法律法规。

本站为技术学习交流站点,与 GitHub, Inc. 无任何隶属或官方关系。所有内容仅供技术研究与学习,请遵守所在国家/地区的法律法规。