Gradlex 是一个用于 Gradle 下载的工具,可以通过镜像配置加速 Gradle 下载。
如果你想在任何路径下都能使用 gradlex 命令,你需要将 gradlex 添加到 PATH 中,否则你只能在 gradlex 文件所在位置打开命令行窗口。
curl -fsSL https://raw.githubusercontent.com/Jacknic/gradlex/master/scripts/install.sh | bashiwr https://raw.githubusercontent.com/Jacknic/gradlex/master/scripts/install-windows.ps1 | iex- 腾讯云 https://mirrors.cloud.tencent.com/gradle/
- 阿里云 https://mirrors.aliyun.com/macports/distfiles/gradle/
- 华为云 https://mirrors.huaweicloud.com/gradle/
目前内置了 3 个镜像地址,你可以通过 gradlex proxy set 0 / gradle p set 0 到2 指定镜像地址。与下面的环境变量方式互斥,互斥优先级为:配置文件 > 环境变量 > 默认值。一般情况下设置这个就够了。使用 gradlex proxy ls 命令可以查看当前内置镜像地址列表。
你需要设置镜像环境变量 GRADLE_DIST_PROXY ,否则 Gradle 包会从官方或原地址下载,而不是镜像地址也就没有加速效果。为了方便使用,建议在 系统环境变量 中设置环境变量,下方的命令行设置仅对当前窗口有效。
- Windows 环境
CMD 中
set GRADLE_DIST_PROXY="https://mirrors.cloud.tencent.com/gradle/"PowerShell 中
$env:GRADLE_DIST_PROXY="https://mirrors.cloud.tencent.com/gradle/"- *nix 环境
export GRADLE_DIST_PROXY="https://mirrors.cloud.tencent.com/gradle/"- 验证环境变量
gradlex envgradlex install -v 6.8.3默认下载 all ,你也可以通过 -t / --type 指定版本类型,支持 bin 和 all 两种类型。
gradlex i -v 8.2 -t bin只要你设置了环境变量 GRADLE_DIST_PROXY ,工具就会解析对应的版本信息,并从指定镜像地址下载对应 Gradle 安装包。项目依赖的 gradle 版本通常在 gradle/wrapper/gradle-wrapper.properties 文件中指定,如果对应版本无法下载,使用 distributionUrl 属性的链接就可以下载对应版本
gradlex i https://services.gradle.org/distributions/gradle-8.7-rc-3-bin.zip如果本地已缓存某个 Gradle 发行版,gradlex link 可以复用该缓存,并将其映射到新的分发地址对应的目录,从而避免重复下载。
gradlex link ~/.gradle/wrapper/dists/gradle-8.8-all/6gdy1pgp427xkqcjbxw3ylt6h https://services.gradle.org/distributions/gradle-8.3-bin.zip如果你的项目使用了 Gradle Wrapper,项目依赖的 Gradle 版本通常在 gradle/wrapper/gradle-wrapper.properties 文件中指定。gradlex 提供了 wrapper 子命令来自动解析该文件并下载安装对应的 Gradle 版本。
# 在当前目录查找并安装(会向上级目录查找 gradle/wrapper/gradle-wrapper.properties)
gradlex w
# 指定工作目录(从指定目录开始往上查找)
gradlex w -f /path/to/projectwrapper 命令会从 gradle-wrapper.properties 中读取 distributionUrl,提取版本号(如 gradle-8.5-bin.zip 中的 8.5)和分发类型(bin 或 all),然后按照已有的下载和解压逻辑安装到 GRADLE_USER_HOME/wrapper/dists 下。该命令同样支持镜像加速(通过 GRADLE_DIST_PROXY 环境变量或 gradlex_config.json 配置)。
gradlex listgradlex local