Content Table

Gradle 修改 Maven 仓库

Gradle 的默认仓库在国内下载太慢了,可以切换到国内的 Maven 镜像仓库,如阿里的 Maven 库,又或者是换成自建的 Maven 私服。

一个简单的办法,修改项目的 build.gradle,将 jcenter() 或者 mavenCentral() 替换掉即可:

1
2
3
4
5
allprojects {
repositories {
maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
}
}

但是如果项目太多,一个一个的修改工作量就太大了,可以通过修改 Gradle 使用的默认 Maven 仓库,这样就不需要单独的修改每个项目了,将下面这段配置复制到 <USER_HOME>/.gradle/init.gradle 即可:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
allprojects {
repositories {
def REPOSITORY_URL = 'https://maven.aliyun.com/nexus/content/groups/public/'
all { ArtifactRepository repo ->
if(repo instanceof MavenArtifactRepository) {
def url = repo.url.toString()
if (url.startsWith('https://repo1.maven.org/maven2') || url.startsWith('https://jcenter.bintray.com/')) {
project.logger.lifecycle "Repository ${repo.url} replaced by $REPOSITORY_URL."
remove repo
}
}
}
maven {
url REPOSITORY_URL
}
}
}

来源于 https://yrom.net/blog/2015/02/07/change-gradle-maven-repo-url/