Zoeken…


Opmerkingen

doLast

Merk op dat in een gradle 3.x meer idiomatische manier taakstelling: met behulp van expliciete doLast {sluiting} notatie in plaats "leftShift" (<<) operator voorkeur (leftShift is gedeprecieerd in een gradle 3.2 is gepland in gradle 5.0 te worden verwijderd. .)

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

is gelijk aan:

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

Afhankelijkheden toevoegen met behulp van taaknamen

We kunnen de volgorde van uitvoering van taken wijzigen met de methode dependsOn .

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

Het toevoegen van `afhankelijkOn: oorzaken:

  • taak B hangt af van taak A
  • Grijp om elke keer A taak uit te voeren voordat de B taak wordt uitgevoerd.

En de output is:

> gradle -q B
Hello from A
Hello from B

Afhankelijkheden van een ander project toevoegen

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

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

Om naar een taak in een ander project te verwijzen, geeft u de naam van de taak voor het pad van het project :projectB:B het behoort :projectB:B

En de output is:

> gradle -q B
Hello from A
Hello from B

Afhankelijkheid toevoegen met behulp van taakobject

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

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

B.dependsOn A

Het is een alternatieve manier om de afhankelijkheid te definiëren in plaats van de taaknaam te gebruiken .

En de output is hetzelfde:

> gradle -q B
Hello from A
Hello from B

Meerdere afhankelijkheden toevoegen

U kunt meerdere afhankelijkheden toevoegen.

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

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

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

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

Nu kunt u een reeks afhankelijkheden definiëren:

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

De output is:

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

Ander voorbeeld:

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

De output is:

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

Meerdere afhankelijkheden met de methode afhankelijk

U kunt meerdere afhankelijkheden toevoegen.

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

De output is:

> 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
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow