|
|
|
@ -18,6 +18,7 @@ |
|
|
|
|
- 任务分组和描述 |
|
|
|
|
- 任务执行分析 |
|
|
|
|
- 任务的 OnlyIf 断言 |
|
|
|
|
- 执行其他 gradle 文件定义的方法 |
|
|
|
|
|
|
|
|
|
#### 思维导图 |
|
|
|
|
|
|
|
|
@ -457,4 +458,34 @@ myCustomTask.onlyIf{ |
|
|
|
|
|
|
|
|
|
加一个参数就好啦,就可以控制任务是否执行了。 |
|
|
|
|
|
|
|
|
|
命令行中 -P 的意思是为 Project 指定 K-V 格式的属性键值对,使用格式为 -PK=V。 |
|
|
|
|
命令行中 -P 的意思是为 Project 指定 K-V 格式的属性键值对,使用格式为 -PK=V。 |
|
|
|
|
|
|
|
|
|
##### 执行其他 gradle 文件里面的方法 |
|
|
|
|
|
|
|
|
|
有时候,我们想要在当前 gradle 文件里面,去执行其他 gradle 里面定义的方法。 |
|
|
|
|
|
|
|
|
|
比如我们想要在 app.gradle 定义一个 Task,去执行放在根目录下的 dep.gradle 文件里面定义的方法,做法如下: |
|
|
|
|
|
|
|
|
|
dep.gradle: |
|
|
|
|
|
|
|
|
|
```groovy |
|
|
|
|
gradle.ext { |
|
|
|
|
showDep = this.&showDep |
|
|
|
|
} |
|
|
|
|
def showDep() { |
|
|
|
|
println("showDep") |
|
|
|
|
} |
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
app.gradle: |
|
|
|
|
|
|
|
|
|
```groovy |
|
|
|
|
apply from: "../dep.gradle" |
|
|
|
|
task("appTask") { |
|
|
|
|
doLast { |
|
|
|
|
println("appTask") |
|
|
|
|
gradle.ext.showDep() |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|