[关闭]
@xtccc 2016-02-11T14:40:12.000000Z 字数 1434 阅读 2186

生命周期

给我写信
GitHub

此处输入图片的描述

Gradle





我们可以在tasks之间定义依赖,Gradle将保证这些tasks将按照它们之间的依赖关系被执行,并且每一个task只会被执行一次。这些tasks构成一个DAG。

1. Build Phases


Gradle build有三个阶段:




2. Settings file


除了build script files之外,Gradle还定义了settings文件 —— Gradle会通过命名约定来确定settings文件,默认的名字是settings.gradle

Settings文件将在Initialization阶段被执行。如果构建过程涉及到多项目,则master project必须包含settings文件,该文件将指定哪些subprojects将参与构建过程;如果构建过程只有一个项目,则可以没有settings文件。

除了在settings文件中指定要包含哪些subprojects之外,我们还可以通过该文件向build script classpath添加libraries。




3. Single Project Build


假设我们有一个单项目要构建,settings.gradlebuild.gradle 文件分别定义如下:

settings.gradle

  1. println '我是settings.gradle文件 ,我在Initialization阶段被执行'

build.gradle

  1. println '我是 build.gradle文件,我在configuration阶段被执行'
  2. task Configured {
  3. println '我是task [Configured],我在`configuration`阶段被执行'
  4. }
  5. task Test {
  6. println '我是task [Test],我在`configuration`阶段被执行'
  7. }
  8. task TestBoth {
  9. doFirst {
  10. println '我是task [TestBoth],我 `doFirst`,我将在execution阶段被执行'
  11. }
  12. doLast {
  13. println '我是task [TestBoth], 我 `doLast`, 我将在execution阶段执行'
  14. }
  15. println '我是task [TestBoth], 我在`configuration`阶段被执行'
  16. }

运行命令gradle Test TestBoth,输出如下:
QQ20160211-3@2x.png-192.7kB




4. Multi-Project Build





5. Project Evaluation






添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注