跨项目配置
虽然子项目之间可以完全隔离单独配置,但是子项目直接有相同特征的情况也是很常见的,多个项目共享配置是更好的选择。
配置和执行
在gradle学习-十八-构建的生命周期这一篇中我们已经讲过Gradle构建过程中的各个阶段,我们继续扩展到多项目构建,来看看多项目构建中的配置阶段和执行阶段。这里所说的配置指的就是build.gradle
文件的执行,这意味着下载所有使用apply plugin
定义的插件。默认情况下,一个任务执行之前所有的项目的配置都会被执行。也就是单个项目的单个任务被请求时,多项目构建中的所有项目都会首先运行配置。这样做的目的是为了可以灵活的访问和更改Gradle项目的任意模块。
按需配置
配置注入特性和访问完整的项目模块都成为可能,因为在执行项目之前每一个项目都进行了配置。但是在一些超大的项目构建面前就显得不那么有效了,比如有数百多个层级嵌套的子项目,大型多项目构建在配置阶段所花的时间就会有点让人难以忍受了,伸缩性对于Gradle来说成为一个非常重要的需求,幸运的是这个需求在1.4版本中就完成了,叫做”按需配置”
按需配置模式仅仅试图对和请求任务