Gradle 构建系统方向总览:从构建模型到 Android 产物流水线
hardGradleAndroidBuild SystemAGPPerformance
Gradle 构建系统目录不是命令速查表,而是一条从底层构建模型到 Android 产物流水线的知识路径。
这个方向的核心问题只有一个:如何让大型 Android 工程的构建过程可解释、可复现、可观测、可回滚。Gradle 提供通用构建引擎,Android Gradle Plugin 把 Android 资源、字节码、DEX、签名和发布格式接入这套引擎。真正的工程能力不在于记住某个配置项,而在于能沿着模型追踪:脚本如何变成 Project,依赖如何变成 classpath,Task 如何进入 DAG,资源和字节码如何被 AGP 加工成 APK/AAB。
学习路线
01 核心架构
-> 02 DSL 语言机制
-> 03 Wrapper 与工程结构
-> 04 依赖管理
-> 05 Task 系统
-> 06 插件开发
-> 07 AGP 构建管线
-> 08 构建性能优化
-> 09 字节码工程
前半部分建立 Gradle 的通用模型:生命周期、脚本执行、依赖解析、任务图和插件扩展。后半部分进入 Android 专属管线:variant、AAPT2、D8/R8、APK/AAB、缓存、KAPT/KSP 和 ASM 插桩。
工程判断标准
读完这个目录后,应该能回答这些生产级问题:
- 为什么一次小改动触发了整条 release 构建链。
- 为什么某个依赖版本不是 build.gradle 中写的版本。
- 为什么某个任务没有 UP-TO-DATE 或 FROM-CACHE。
- 为什么 configuration cache 命中失败。
- 为什么 AAPT2、D8、R8 报错应该沿不同产物链定位。
- 为什么旧 Transform API 会拖慢构建并增加升级风险。
这些问题都不是单点 API 问题,而是构建模型、产物流和工程风险共同作用的结果。
质量边界
本目录所有文章都按同一标准展开:先解释模型,再拆底层机制,最后落到工程风险、观测、审计、回滚和降级。构建系统是工业工程的一部分,任何不可观测、不可复现、不可回滚的构建能力,最终都会变成团队交付风险。