第十章 gradle自动化构建系列文章 之 gradle中的project
< center>
查看 “Android自动化构建系列” 全部文章
gradle 相对于maven,ant的强大之处在于可以变成控制构建的整个流程,不再局限于xml配置文件
gradle项目和我们平时理解的 AndroidStudio 项目不同,从gradle执行的角度理解,每一个moudle都是一个独立的project,包括最外层的project 也是project, 里面的task都是独立存在的
1. gradle 运行中的三个过程
初始化: 解析setting.gradle,获取所有的project
**配置:**通过扫描所有project中的build.gradle文件获取所有的task,形成有线无环图形成先后执行依赖关系
执行task: 按照上面的顺序执行所有的task
- 上面的三个过程对应三个色块
2. gralde生命周期的监听实现
2.1 初始化
- 初始化其实就是在执行 setting.gralde 所以初始化你希望做的事情就可以写在 setting.gralde 这个文件里,运行的时候就会在gradle指令初始化的时候执行
2.2 配置阶段开始之前的监听,project级别的,每个project中的监听都会执行一次,执行的顺序和setting中inculde 顺序一样
/**
* 配置阶段开始前的回调
*/
this.beforeEvaluate {
println "app初始化完成..."
}
2.3 配置阶段完成阶段的监听,project级别的,每个project中的监听都会执行一次,执行的顺序和setting中inculde 顺序一样
/**
* 配