gradle
Taken bestellen
Zoeken…
Opmerkingen
mustRunAfter
enshouldRunAfter
zijn gemarkeerd als "incuberen" (vanaf Gradle 3.0), wat betekent dat dit experimentele functies zijn en dat hun gedrag in toekomstige releases kan worden gewijzigd.
Er zijn twee bestelregels beschikbaar:
-
mustRunAfter
-
shouldRunAfter
Wanneer u de mustRunAfter
geeft u op dat taskB altijd moet worden uitgevoerd na taskA, wanneer zowel taskA als taskB worden uitgevoerd.
De opdrachtregel shouldRunAfter
is vergelijkbaar, maar minder strikt omdat deze in twee situaties wordt genegeerd:
- als het gebruik van die regel een bestelcyclus introduceert.
- wanneer u parallelle uitvoering gebruikt en aan alle afhankelijkheden van een taak is voldaan, afgezien van de taak
shouldRunAfter
, wordt deze taak uitgevoerd ongeacht of de afhankelijkheden vanshouldRunAfter
zijn uitgevoerd of niet.
Bestellen met de methode mustRunAfter
task A << {
println 'Hello from A'
}
task B << {
println 'Hello from B'
}
B.mustRunAfter A
De B.mustRunAfter A
geeft Gradle opdracht om taak na taak uit te voeren die is opgegeven als argument.
En de output is:
> gradle -q B A
Hello from A
Hello from B
De bestelregel introduceert geen afhankelijkheid tussen de A- en de B-taken, maar heeft alleen effect wanneer beide taken zijn gepland voor uitvoering.
Het betekent dat we taken A en B onafhankelijk kunnen uitvoeren.
De output is:
> gradle -q B
Hello from B