外观
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.gradle 的 repositories:
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 |
| Spring | https://maven.aliyun.com/repository/spring |
| Gradle Plugin | https://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.gradle的dependencyResolutionManagement.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仓库镜像。
本文仅供技术学习与研究,请遵守所在国家/地区法律法规。