Skip to content

Gradle 从 0 到 1 学习手册

谁适合看这套笔记?

  • 完全没接触过 Gradle、想快速上手的小白
  • 一直被 build.gradle 报错折磨、不知道每行什么意思的"复制粘贴工程师"
  • 写过 Maven / Ant,想转 Gradle 的 Java/Kotlin 后端开发者
  • Android 开发者,想真正搞懂"为什么我点一下编译要等 30 秒"
  • 准备 Java / Kotlin / Android 岗位面试,想系统补齐构建工具知识盲区的同学

这是一份「生活化讲解 + 可运行代码 + 可视化演示 + 真实面试题」四位一体的 Gradle 学习笔记。每一章都假设你是完全没基础的小白,从「为什么要造 Gradle」开始讲,直到能自己写出工程化的多模块构建脚本。


🎯 为什么要学 Gradle

问题一句话回答
Gradle 是什么?基于 Groovy/Kotlin DSL 的现代构建工具,Android、Spring Boot、Kotlin 项目的事实标准
跟 Maven 啥关系?Maven 用 XML 声明,Gradle 用 代码 DSL —— 灵活度高一个量级;同时兼容 Maven 的依赖仓库。
学完能干啥?看懂任何 build.gradle.kts、写自定义 Task / 插件、做多模块项目、把构建从 30s 压到 5s。
学习曲线陡吗?基础 1 天能跑起来;理解生命周期、配置阶段 vs 执行阶段、Task 配置原理需要慢慢嚼。
为啥要从 Groovy 学到 Kotlin DSL?老项目还都是 Groovy,新项目都在转 Kotlin DSL,两边都得会看
工资 / 面试有没有用?中高级 Android / Kotlin / Java 后端面试必问:"你能讲讲 Gradle 的构建生命周期吗?"答不出来直接掉档。

📚 章节地图

章节主题核心知识点难度
第 0 章 学习路线入门到进阶的整体规划学习节奏 / 推荐资料 / 常见误区
第 1 章 Gradle 是什么历史、定位、与 Maven/Ant 对比DSL / 增量构建 / 依赖管理三大卖点
第 2 章 环境搭建 & WrapperJDK / Gradle / Wrapper / 第一个项目wrapper / gradlew / IDE 集成
第 3 章 核心概念Project / Task / Plugin / 生命周期配置阶段 vs 执行阶段 / Task 图⭐⭐⭐
第 4 章 构建脚本 DSLGroovy DSL vs Kotlin DSL 全对照settings / build / properties⭐⭐
第 5 章 Task 全攻略Task 类型、依赖、增量构建doFirst/doLast / inputs/outputs⭐⭐⭐
第 6 章 依赖管理仓库 / 配置 / 版本冲突implementation/api/runtimeOnly⭐⭐⭐
第 7 章 Plugin 插件体系核心 / 社区 / 自定义插件applyPlugin / Plugin DSL / 自定义插件⭐⭐⭐
第 8 章 多项目构建子项目 / Composite Build / Conventionsettings.gradle / 项目层级⭐⭐⭐⭐
第 9 章 性能优化缓存 / 并行 / Daemon / 配置缓存把 60s 压到 5s 的全部技巧⭐⭐⭐⭐
第 10 章 实战项目多模块 Spring Boot + 模块化 Android 风格把所有知识串起来做工程⭐⭐⭐⭐

🧭 推荐学习节奏

Day 1 - 2  : 第 1-2 章   建立体感,跑通 ./gradlew build
Day 3 - 5  : 第 3-4 章   理解生命周期,看懂任意 build.gradle.kts
Day 6 - 8  : 第 5-6 章   能写自定义 Task,搞清依赖配置
Day 9 - 11 : 第 7-8 章   会写插件 / 多模块工程
Day 12 - 14: 第 9-10 章   把构建优化到极致 + 上手实战项目

💡 建议:每章先看文档,再打开浏览器看 demo 演示(demo.html 双击即开),最后把 code/ 目录下的脚本亲手敲一遍并 ./gradlew xxx 跑通。Gradle 是"动手才能学会"的工具,光读不练等于没学。


🛠 配套资源

  • 每章可视化 demo:浏览器即开即用,无需配置;动画演示生命周期、Task 图、依赖图、缓存命中等抽象概念
  • 示例代码code/ 目录下完整可跑的 mini-project,可直接 ./gradlew run / ./gradlew test
  • 面试题:每章末尾 8-10 道高频面试题,附详细解析

🆚 跟其他构建工具的速览对比

维度MakeAntMavenGradle
描述方式Makefile(规则)XML(任务)XML(声明)Groovy / Kotlin DSL(代码)
依赖管理弱(Ivy)✅ 强强(兼容 Maven 仓库)
增量构建文件时间戳input/output 指纹
构建缓存本地 + 远程缓存
并行构建-j任务级并行
上手难度⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐(前期陡)
灵活度⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Android 支持Google 钦定
Kotlin 友好原生 Kotlin DSL

一句话总结:Maven 让你"声明你要什么",Gradle 让你"写代码描述如何构建" —— 灵活但有学习成本。


📖 延伸阅读