Gradle的介绍及换源

本文详细介绍了如何安装Gradle4.10.3,包括从腾讯镜像下载安装包,解压并配置环境变量,测试安装成功。同时,文章还指导如何配置Gradle使用阿里云仓库以加速下载,并提到了Gradle的缓存目录默认位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. gradle简介

Gradle 和 Maven 都是 Java 生态中主流的项目构建工具,但它们在设计理念、性能和灵活性上有显著区别。以下是它们的核心对比:
在这里插入图片描述

2. gradle的工作机制

为什么每次idea创建gradle项目的时候,都会下载gradle

  • Gradle 的核心理念是每个项目独立配置,包括 Gradle 版本。即使你本地已安装过其他版本的 Gradle,新项目也可能指定了不同的版本(通过 gradle-wrapper.properties 文件中的 distributionUrl 定义)。

  • 这种设计避免了全局版本冲突,确保项目构建的可靠性。

gradle wrapper的作用

  • 创建项目时,IDEA 默认会生成或使用项目中的 Gradle Wrapper(即 gradlew 或 gradlew.bat 脚本 + gradle-wrapper.properties 文件)。

  • Wrapper 的作用是自动下载并管理指定版本的 Gradle,无需用户手动安装。这是 Gradle 官方推荐的实践,目的是保证所有协作者和构建环境的一致性。

  • 首次运行时会根据配置下载对应版本的 Gradle 到本地缓存(通常位于 ~/.gradle/wrapper/dists/)。

思考:是否应该将gradle-wrapper.jar提交的git远程仓库

答案:✅ 应该提交 gradle-wrapper.jar 以及相关的 gradle-wrapper.properties 文件到 Git 仓库。原因如下:

  • 一致性
    Gradle Wrapper 的目的是确保所有开发者、CI 环境使用相同版本的 Gradle,避免因本地 Gradle 版本不同导致构建问题。提交 gradle-wrapper.jar 能保证所有人使用完全相同的 Wrapper 逻辑。

  • 零配置构建
    新克隆仓库的用户可以直接运行 ./gradlew(或 gradlew.bat)而无需手动安装 Gradle,降低入门门槛。

  • 历史记录
    如果未来需要回退到旧版本 Gradle,仓库中的历史记录能确保 Wrapper 的兼容性。

3. 新项目需要下载gradle的时候,加速下载

  1. 使用国内镜像地址替换 distributionUrl
    修改项目中的 gradle-wrapper.properties 文件,将默认的distributionUrl替换为国内镜像站(如腾讯云、阿里云等)。例如:
  • 腾讯云镜像
    distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-8.4-bin.zip
    
  • 阿里云镜像
    distributionUrl=https\://mirrors.aliyun.com/gradle/gradle-8.4-bin.zip
    

4. 配置gradle 阿里源

  1. 创建或修改全局初始化文件:
    路径:~/.gradle/init.gradle(Windows:%USERPROFILE%\.gradle\init.gradle

  2. 编辑 init.gradle 文件,新增如下内容

    // 配置所有项目的依赖仓库
    allprojects {
        repositories {
            mavenLocal()
            // 阿里云镜像(优先使用)
            maven {
                url 'https://maven.aliyun.com/repository/public/'
                allowInsecureProtocol = true // Gradle 7.0+ 需要显式声明
            }
            maven {
                url 'https://maven.aliyun.com/repository/central'
                allowInsecureProtocol = true
            }
            maven {
                url 'https://maven.aliyun.com/repository/google/'
                allowInsecureProtocol = true
            }
            // 必须保留的分号(如果后面有其他表达式)
            ;
            // 保留官方仓库(备用)
            mavenCentral()
            google()
        }
    }
    
    settingsEvaluated { settings ->
        settings.pluginManagement {
            repositories {
                maven { 
                    url 'https://maven.aliyun.com/repository/gradle-plugin/'
                    allowInsecureProtocol = true
                }
                // 显式添加分号分隔
                ;
                // Gradle官方插件仓库
                gradlePluginPortal()
            }
        }
    }
    

阿里云仓库地址来源:
https://developer.aliyun.com/mvn/view

5. gradle 缓存目录

这部分内容参考博客:https://blog.youkuaiyun.com/feinifi/article/details/81458639

gradle可以指定本地maven本地仓库

allprojects {
    repositories {
        // 本地仓库,地址是maven本地仓库地址
        mavenLocal()
    }
}

但是,如果本次仓库没有,gradle会从指定的远程仓去下载,但是下载下来的 jar 包并不是存储在 maven 本地仓库中,而是存放在了自己的缓存目录中(默认地址:~/.gradle/caches/modules-2/file-2.1/ )

要在Android Studio中更换Gradle国内源,可以按照以下步骤进行操作: **步骤1:** 打开Android Studio,在顶部菜单栏中选择 "File(文件)",然后选择 "Settings(设置)"。 **步骤2:** 在弹出的窗口中,选择 "Build, Execution, Deployment(构建,执行,部署)",然后选择 "Build Tools(构建工具)"。 **步骤3:** 在右侧的窗口中,选择 "GradleGradle)" 选项。 **步骤4:** 在 "Service directory path(服务目录路径)" 下方,你将看到 "Gradle home(Gradle的安装目录)"。 **步骤5:** 点击 "Use local Gradle distribution(使用本地Gradle版本)" 的复选框。 **步骤6:** 在 "Gradle installation directory(Gradle安装目录)" 输入框中,填写你下载并解压的Gradle文件夹的完整路径。 **步骤7:** 点击 "OK" 保存更改。 **步骤8:** 在Android Studio的顶部菜单中,选择 "File(文件)",然后选择 "Settings(设置)"。 **步骤9:** 在弹出的窗口中,选择 "Build, Execution, Deployment(构建,执行,部署)",然后选择 "GradleGradle)"。 **步骤10:** 在右侧的窗口中,找到 "Gradle project(Gradle项目)" 的 "Build file section(构建文件)"。 **步骤11:** 选择 "Use default gradle wrapper(使用默认的Gradle包装器)"。 **步骤12:** 点击 "OK" 保存更改。 完成以上步骤后,Android Studio将使用国内的Gradle源来构建你的项目。这样做可以提高构建速度,并在国内使用Gradle时更加稳定和可靠。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值