Ricerca…


Osservazioni

doLast

Nota che in un gradle 3.x la definizione del task in modo più idiomatico: usando la notazione esplicita doLast {closure} invece preferibile l'operatore "leftShift" (<<). ( LeftShift è stato deprecato in un gradle 3.2 è programmato per essere rimosso in gradle 5.0 .)

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

è equivalente a:

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

Aggiunta di dipendenze usando i nomi delle attività

Possiamo cambiare l'ordine di esecuzione delle attività con il metodo dependsOn .

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

Aggiungere `dependsOn: cause:

  • l'attività B dipende dall'attività A
  • Gradle eseguire A ogni compito prima del B esecuzione dell'attività.

E l'output è:

> gradle -q B
Hello from A
Hello from B

Aggiunta di dipendenze da un altro progetto

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

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

Per fare riferimento a un'attività in un altro progetto, si precede il nome dell'attività con il percorso del progetto a cui appartiene :projectB:B

E l'output è:

> gradle -q B
Hello from A
Hello from B

Aggiunta di dipendenza utilizzando l'oggetto compito

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

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

B.dependsOn A

È un modo alternativo per definire la dipendenza anziché utilizzare il nome dell'attività.

E l'output è lo stesso:

> gradle -q B
Hello from A
Hello from B

Aggiunta di dipendenze multiple

È possibile aggiungere più dipendenze.

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

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

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

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

Ora puoi definire una serie di dipendenze:

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

L'output è:

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

Altro esempio:

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

L'output è:

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

Dipendenze multiple con il metodo dependsOn

È possibile aggiungere più dipendenze.

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'
}

L'output è:

> 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
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow