Skip to content

学习路线

本文为不同背景的学习者规划 Gradle 学习路线,帮助你制定适合自己的学习计划。

学习路线图

阶段一:入门基础(1-2 周)
├── Gradle 简介 & 核心概念
├── 安装配置(本地环境搭建)
├── Hello World(第一个项目)
├── 常用命令(build/clean/test/tasks)
└── 构建生命周期(三个阶段)

阶段二:构建脚本(1-2 周)
├── DSL 选择(推荐 Kotlin DSL)
├── Groovy / Kotlin DSL 基础语法
├── 属性与变量管理
├── 文件操作 API
└── 日志与调试技巧

阶段三:Task 深入(1 周)
├── 任务基础(定义、执行、分组)
├── 任务依赖(dependsOn、mustRunAfter)
├── 内置任务类型(Copy、Exec、Zip 等)
├── 自定义任务类(@Input/@Output)
└── 增量构建原理与实践

阶段四:依赖管理(1-2 周)
├── 依赖配置(implementation/api/runtimeOnly)
├── 仓库配置(Maven Central、本地、私有)
├── 动态版本与范围版本
├── 版本冲突解决策略
├── 依赖锁定(Dependency Locking)
├── BOM 物料清单
└── 版本目录(libs.versions.toml)

阶段五:Java 项目构建(1 周)
├── Java 插件完整配置
├── 源码集(SourceSet)定制
├── 测试配置(JUnit5、测试过滤)
├── 打包 JAR(普通 JAR / Fat JAR)
└── 发布到 Maven 仓库

阶段六:多项目构建(1 周)
├── 多模块项目结构设计
├── settings.gradle.kts 详解
├── 子项目统一配置(allprojects/subprojects)
├── 项目间依赖引用
├── buildSrc(共享构建逻辑)
└── 复合构建(Composite Build)

阶段七:常用插件(1 周)
├── Spring Boot 插件
├── Kotlin 插件
├── 代码质量插件(Checkstyle/SpotBugs/JaCoCo)
├── Shadow 插件(FatJar)
└── 发布插件(maven-publish)

阶段八:自定义插件(可选,1-2 周)
├── 脚本插件(apply from)
├── buildSrc 插件
├── 独立插件项目
├── 插件扩展(Extension)设计
└── 插件测试与发布

阶段九:高级特性(可选,1-2 周)
├── 构建缓存 & 配置缓存
├── 并行构建 & 性能调优
├── Provider API(懒加载)
├── Worker API
└── Toolchain 工具链

阶段十:CI/CD 集成(按需)
├── Jenkins Pipeline 集成
├── GitHub Actions 集成
└── GitLab CI 集成

各阶段推荐学习内容

阶段一:入门基础

目标:能够运行 Gradle 构建,理解基本概念

内容预计时间
Gradle 简介30 分钟
核心概念1 小时
Gradle vs Maven30 分钟
Windows 安装macOS 安装30 分钟
Gradle Wrapper30 分钟
Hello World1 小时
常用命令1 小时
构建生命周期1 小时

阶段目标验证

bash
# 能够独立完成以下操作
./gradlew build          # 构建项目
./gradlew clean build    # 清理并重新构建
./gradlew test           # 运行测试
./gradlew tasks --all    # 查看所有任务
./gradlew dependencies   # 查看依赖树

阶段二:构建脚本

目标:能够阅读和编写基本的构建脚本

内容预计时间
Groovy DSL vs Kotlin DSL 选择30 分钟
Kotlin DSL 基础(推荐先学)2 小时
Groovy DSL 基础2 小时
属性与变量1 小时
gradle.properties 配置30 分钟
文件操作基础1 小时

阶段三:Task 深入

目标:能够自定义任务,理解增量构建

内容预计时间
任务基础1 小时
任务依赖1 小时
内置任务类型1 小时
自定义任务类2 小时
增量构建1 小时

阶段四:依赖管理

目标:能够管理复杂的项目依赖

内容预计时间
依赖管理基础1 小时
依赖配置1 小时
仓库配置1 小时
版本冲突解决1 小时
BOM 物料清单1 小时
版本目录(Catalog)2 小时

按背景推荐路线

路线 A:Maven 老手转 Gradle

重点关注差异点,快速迁移知识:

  1. Gradle vs Maven → 理解核心差异
  2. Kotlin DSL 基础 → 用熟悉的思维理解新语法
  3. 依赖配置 → Maven scope vs Gradle configuration 映射
  4. 多项目构建基础 → 替换 Maven 多模块
  5. 发布到 Maven 仓库 → 迁移发布配置
  6. 从 Maven 迁移到 Gradle

预计时间:1 周快速上手

路线 B:Android 开发者

Android Studio 已内置 Gradle,重点学习定制化:

  1. 核心概念 → 理解 Android 构建的底层
  2. 依赖管理基础 → 管理 Android 依赖
  3. 版本目录(Catalog) → 统一管理 SDK 版本
  4. Android 插件简介 → 深入 Android Gradle Plugin
  5. 多项目构建基础 → 多模块 Android 项目
  6. Android 项目构建 → 实战案例

路线 C:Java 后端新手

从零开始,系统学习:

按本文"学习路线图"顺序,每周完成 1-2 个阶段,约 2-3 个月达到熟练水平。

路线 D:DevOps / CI 工程师

重点关注构建优化和 CI/CD:

  1. 常用命令 → 熟悉命令行操作
  2. 构建缓存 → 加速 CI 构建
  3. 构建扫描 → 分析构建性能
  4. Jenkins 集成 → CI 流水线
  5. GitHub Actions 集成 → GitHub 工作流
  6. 性能调优 → 极致优化

学习建议

  1. 边学边练:每学一个概念,立即动手实验
  2. 从项目出发:用自己的项目练习,学习更有针对性
  3. 善用 --info--scan:遇到问题先看详细输出和构建扫描
  4. 阅读官方文档Gradle 官方文档 是最权威的参考
  5. 优先 Kotlin DSL:新项目推荐使用 Kotlin DSL,IDE 支持更好

常用参考资源

资源链接
Gradle 官方文档https://docs.gradle.org
Gradle 用户手册https://docs.gradle.org/current/userguide
Gradle API 文档https://docs.gradle.org/current/dsl
Gradle 插件门户https://plugins.gradle.org
Gradle Build Scanshttps://scans.gradle.com

下一步