Gramática básica para definir tareas.
Hay dos formas de definición, que hemos utilizado en la sección anterior:
task tName1 {
println '直接带闭包的定义方式'
}
task tName2() {
println '带括号的定义方式'
}
Revise las conclusiones del experimento en la siguiente sección nuevamente, el código anterior solo se ejecutará al construir el proyecto (construcción de gradle), no se ejecutarán otros métodos.
Si necesita ejecutar el código cuando se llama a la tarea, debe definir el código en doFirst o doLast
Configuración dependiente de la tarea
Los tres métodos de configuración son los siguientes:
task t1 {
doFirst {
println 't1'
}
}
//定义任务时参数依赖
task t2(dependsOn: 't1') {
doLast {
println 't2'
}
}
//任务内部依赖
task t3 {
dependsOn t1
doLast {
println 't3'
}
}
//任务外部依赖
task t4 {
doLast {
println 't4'
}
}
t4.dependsOn t1
Tareas dinámicas (comprender)
4.times { val ->
task "tk${val}" {
doLast {
println "The task is task${val}"
}
}
}
Actualizar para ver generará 4 tareas
Personalizar propiedades para tareas
task t1 {
ext.myProperty = "Test property value"
doLast {
println "t1 ${myProperty}"
}
}
Realice la tarea para ver la salida:
task t1 {
ext.myProperty = "Test property value"
doLast {
println "t1 ${myProperty}"
}
}