Buscar..


Observaciones

DoLast

Tenga en cuenta que en una definición de tarea de forma gradle 3.x más idiomática: usar la notación explícita doLast {closing} en lugar del operador "leftShift" (<<) es preferible. ( LeftShift ha sido desaprobado en un gradle 3.2 está programado para eliminarse en gradle 5.0 .)

task oldStyle << {
    println 'Deprecated style task'
 }

es equivalente a:

task newStyle {
    doLast {
    println 'Deprecated style task'
    }
 }

Agregando dependencias usando nombres de tareas

Podemos cambiar el orden de ejecución de las tareas con el método dependsOn .

task A << {
    println 'Hello from A'
}
task B(dependsOn: A) << {
    println "Hello from B"
}

Añadiendo `Dependiente: causa:

  • la tarea B depende de la tarea A
  • Gradle para ejecutar A tarea cada vez antes de la ejecución de la tarea B

Y la salida es:

> gradle -q B
Hello from A
Hello from B

Añadiendo dependencias de otro proyecto.

project('projectA') {
    task A(dependsOn: ':projectB:B') << {
        println 'Hello from A'
    }
}

project('projectB') {
    task B << {
        println 'Hello from B'
    }
}

Para hacer referencia a una tarea en otro proyecto, debe prefijar el nombre de la tarea con la ruta del proyecto al que pertenece :projectB:B

Y la salida es:

> gradle -q B
Hello from A
Hello from B

Agregando dependencia usando el objeto de tarea

task A << {
    println 'Hello from A'
}

task B << {
    println 'Hello from B'
}

B.dependsOn A

Es una forma alternativa de definir la dependencia en lugar de usar el nombre de la tarea .

Y la salida es la misma:

> gradle -q B
Hello from A
Hello from B

Añadiendo múltiples dependencias

Puede agregar múltiples dependencias.

task A << {
    println 'Hello from A'
}

task B << {
    println 'Hello from B'
}

task C << {
    println 'Hello from C'
}

task D << {
    println 'Hello from D'
}

Ahora puedes definir un conjunto de dependencias:

B.dependsOn A
C.dependsOn B
D.dependsOn C

La salida es:

> gradle -q D
Hello from A
Hello from B
Hello from C
Hello from D

Otro ejemplo:

B.dependsOn A 
D.dependsOn B
D.dependsOn C

La salida es:

> gradle -q D
Hello from A
Hello from B
Hello from C
Hello from D

Múltiples dependencias con el método Depende

Puede agregar múltiples dependencias.

task A << {
    println 'Hello from A'
}

task B(dependsOn: A) << {
    println 'Hello from B'
}

task C << {
    println 'Hello from C'
}

task D(dependsOn: ['B', 'C'] << {
    println 'Hello from D'
}

La salida es:

> gradle -q D
Hello from A
Hello from B
Hello from C
Hello from D


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow