Gradle在国内配置镜像加速的实现步骤

2025-05-08 13:50

本文主要是介绍Gradle在国内配置镜像加速的实现步骤,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《Gradle在国内配置镜像加速的实现步骤》在国内使用Gradle构建项目时,最大的痛点就是依赖下载贼慢,甚至卡死,下面教你如何配置国内镜像加速Gradle下载依赖,主要是通过改写repositori...

引言

在国内使用 Gradle 构建项目时,最大的痛点就是 依赖下载贼慢,甚至卡死。下面教你如何 配置国内镜像加速 Gradle 下载依赖,主要是通过改写 repositories 中的源地址来实现。亲测有效。

一、修改 build.gradle 或 settings.gradle 的 repositories 配置

把默认的 jcenter()mavenCentral() 或 google() 替换成国内镜像,比如阿里云或清华。

示例:使用阿里云加速

repositories {
    maven { url 'https://maven.aliyun.com/repository/public' }   js   // Maven Central
    maven { url 'https://maven.aliyun.com/repository/jcenter' }     // JCenter
    maven { url 'https://maven.aliyun.com/repository/google' }      // Google
    maven { url 'https://maven.aliyun.com/repository/gradle-plugin' } // Gradle 插件
}

或者使用清华镜像(也比较稳定)

repositories {
    maven { url 'https://mirrors.tuna.tsinghua.edu.cn/maven/central/' }
    maven { url 'https://mirrors.tuna.tsinghua.edu.cn/gradle/' }
}

二、修改全局配置(推荐用于多项目)

如果你不想每个项目都写一次,可以配置到全局:

路径:

  • linux / MACOS: ~/.gradle/init.gradle

  • WindowsC:\Users\<你的用户名>\.gradle\init.gradle

内容如下(自动全局替换 Maven 仓库为阿里云):

allprojects {
    repositories {
        all { ArtifactRepository repo ->
            if (repo instanChina编程ceof MavenArtifactRepository) {
                def url = repo.url.toString()
                if (url.contains('jcenter.bintray.com')) {
                    repo.setUrl('https://maven.aliyun.com/repository/jcenter')
                }
                if (url.contains('mavenCentral')) {
     编程China编程               repo.setUrl('https://maven.aliyun.com/repository/central')
                }
                if (url.contains('plugins.gradle.org')) {
                    repo.setUrl('https://maven.aliyun.com/repository/gradle-plugin')
                }
                if (url.contains('dl.google.com')) {
                    repo.setUrl('https://maven.aliyun.com/repository/google')
                }
            }
        }
    }
}

这样就能实现“偷偷地换源”,你原来 build.gradle 里啥都不用动。

三、代理加速(配合魔法使用)

在 ~/.gradle/gradle.properties 文件中加上代理设置:

systemProp.http.proxyHost=127.0.0.1
systemProp.http.proxyPort=7890
systemProp.https.proxyHost=127.0.0.1
systemProp.https.proxyPort=7890

你也可以使用环境变量配置:

export GRADLE_OPTS="-Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=7890 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=7890"

检查是否生效

执行构建命令并加上 --info,例如:

./gradlew build --info

可以看到使用了哪个仓库 URL,如果是 aliyunwww.chinasem.cn.com 或 tuna.tsinghua.edu.cn 就说明成功了。

到此这篇关于Gradle在国内配置镜像加速的实现步骤的文章就介绍到这了,China编程更多相关Gradle国内配置镜像加速内容请搜索China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持China编程(www.chinasem.cn)!

这篇关于Gradle在国内配置镜像加速的实现步骤的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1154520

相关文章

Python+Tkinter实现Windows Hosts文件编辑管理工具

《Python+Tkinter实现WindowsHosts文件编辑管理工具》在日常开发和网络调试或科学上网场景中,Hosts文件修改是每个开发者都绕不开的必修课,本文将完整解析一个基于Python... 目录一、前言:为什么我们需要专业的Hosts管理工具二、工具核心功能全景图2.1 基础功能模块2.2 进

Java版本不兼容问题详细解决方案步骤

《Java版本不兼容问题详细解决方案步骤》:本文主要介绍Java版本不兼容问题解决的相关资料,详细分析了问题原因,并提供了解决方案,包括统一JDK版本、修改项目配置和清理旧版本残留等步骤,需要的朋... 目录错误原因分析解决方案步骤第一步:统一 JDK 版本第二步:修改项目配置第三步:清理旧版本残留兼容性对

使用FileChannel实现文件的复制和移动方式

《使用FileChannel实现文件的复制和移动方式》:本文主要介绍使用FileChannel实现文件的复制和移动方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录使用 FileChannel 实现文件复制代码解释使用 FileChannel 实现文件移动代码解释

Spring实现Bean的初始化和销毁的方式

《Spring实现Bean的初始化和销毁的方式》:本文主要介绍Spring实现Bean的初始化和销毁的方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Bean的初始化二、Bean的销毁总结在前面的章节当中介绍完毕了ApplicationContext,也就

使用easy connect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题

《使用easyconnect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题》:本文主要介绍使用easyconnect之后,maven无法... 目录使用easGWowCy connect之后,maven无法使用,原来需要配置-DJava.net.pr

idea报错java: 非法字符: ‘\ufeff‘的解决步骤以及说明

《idea报错java:非法字符:‘ufeff‘的解决步骤以及说明》:本文主要介绍idea报错java:非法字符:ufeff的解决步骤以及说明,文章详细解释了为什么在Java中会出现uf... 目录BOM是什么?1. BOM的作用2. 为什么会出现 \ufeff 错误?3. 如何解决 \ufeff 问题?最

python+OpenCV反投影图像的实现示例详解

《python+OpenCV反投影图像的实现示例详解》:本文主要介绍python+OpenCV反投影图像的实现示例详解,本文通过实例代码图文并茂的形式给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一、前言二、什么是反投影图像三、反投影图像的概念四、反向投影的工作原理一、利用反向投影backproj

Django之定时任务django-crontab的实现

《Django之定时任务django-crontab的实现》Django可以使用第三方库如django-crontab来实现定时任务的调度,本文主要介绍了Django之定时任务django-cront... 目录crontab安装django-crontab注册应用定时时间格式定时时间示例设置定时任务@符号

Python中edge-tts实现便捷语音合成

《Python中edge-tts实现便捷语音合成》edge-tts是一个功能强大的Python库,支持多种语言和声音选项,本文主要介绍了Python中edge-tts实现便捷语音合成,具有一定的参考价... 目录安装与环境设置文本转语音查找音色更改语音参数生成音频与字幕总结edge-tts 是一个功能强大的

Java实现按字节长度截取字符串

《Java实现按字节长度截取字符串》在Java中,由于字符串可能包含多字节字符,直接按字节长度截取可能会导致乱码或截取不准确的问题,下面我们就来看看几种按字节长度截取字符串的方法吧... 目录方法一:使用String的getBytes方法方法二:指定字符编码处理方法三:更精确的字符编码处理使用示例注意事项方