Android Plugin DSL Reference 参考文档 :
创建 Gradle 插件 , 一般是在 Android Studio 或者 IntelliJ IDEA 中 , 创建一个插件模块 , 这里以 AS 中为例 ;
先介绍实现 Gradle 插件的一种方式 , 在 Android Studio 工程的根目录中的 buildSrc 目录中 , 实现 Gradle 插件 ;
在 Android Studio 工程的根目录中 , 创建 buildSrc 目录 , 该目录是特殊目录 , AS 自动为该目录引入了 Groovy / Java / Gradle 的 API 依赖 ,
然后在该目录下创建 src/main/groovy 目录 , 用于存放 Gradle 插件源码 ;
如果工程根目录中存在 buildSrc 目录 , 在执行 assembleDebug 编译任务时 , 首先执行 buildSrc 模块中的 clean , compile , assemble 等 编译任务 ;
如下图所示 : buildSrc 的 Gradle 任务 , 是在 Gradle 构建脚本配置之前执行的 ;
不管 Android 工程中有多少 Module 模块 , 都会执行 buildSrc 模块下的任务 , 该模块比较特殊 , 在 buildSrc/src/main/groovy 目录下写的 groovy 代码 , 都可以作用于 工程其它的编译脚本中 ;
编译后 , 在 buildSrc 目录下会生成 .gradle 目录 和 build 目录 ;