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

相关文章

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

Java实现复杂查询优化的7个技巧小结

《Java实现复杂查询优化的7个技巧小结》在Java项目中,复杂查询是开发者面临的“硬骨头”,本文将通过7个实战技巧,结合代码示例和性能对比,手把手教你如何让复杂查询变得优雅,大家可以根据需求进行选择... 目录一、复杂查询的痛点:为何你的代码“又臭又长”1.1冗余变量与中间状态1.2重复查询与性能陷阱1.

python 线程池顺序执行的方法实现

《python线程池顺序执行的方法实现》在Python中,线程池默认是并发执行任务的,但若需要实现任务的顺序执行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋... 目录方案一:强制单线程(伪顺序执行)方案二:按提交顺序获取结果方案三:任务间依赖控制方案四:队列顺序消

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

Redis实现分布式锁全过程

《Redis实现分布式锁全过程》文章介绍Redis实现分布式锁的方法,包括使用SETNX和EXPIRE命令确保互斥性与防死锁,Redisson客户端提供的便捷接口,以及Redlock算法通过多节点共识... 目录Redis实现分布式锁1. 分布式锁的基本原理2. 使用 Redis 实现分布式锁2.1 获取锁

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

Java使用正则提取字符串中的内容的详细步骤

《Java使用正则提取字符串中的内容的详细步骤》:本文主要介绍Java中使用正则表达式提取字符串内容的方法,通过Pattern和Matcher类实现,涵盖编译正则、查找匹配、分组捕获、数字与邮箱提... 目录1. 基础流程2. 关键方法说明3. 常见场景示例场景1:提取所有数字场景2:提取邮箱地址4. 高级

使用SpringBoot+InfluxDB实现高效数据存储与查询

《使用SpringBoot+InfluxDB实现高效数据存储与查询》InfluxDB是一个开源的时间序列数据库,特别适合处理带有时间戳的监控数据、指标数据等,下面详细介绍如何在SpringBoot项目... 目录1、项目介绍2、 InfluxDB 介绍3、Spring Boot 配置 InfluxDB4、I