gradle
Uppgiftsberoende
Sök…
Anmärkningar
doLast
Notera, att i en gradle 3.x mer idiomatisk definition sätt uppgift: med användning av explicita doLast {stängning} notation i stället "leftShift" (<<) operatör föredra (leftShift har fasats i en gradle 3,2 är planerad att tas bort i gradle 5,0. .)
task oldStyle << {
println 'Deprecated style task'
}
är ekvivalent med:
task newStyle {
doLast {
println 'Deprecated style task'
}
}
Lägga till beroenden med uppgiftsnamn
Vi kan ändra exekveringsordningen för uppgifterna med metoden dependsOn
.
task A << {
println 'Hello from A'
}
task B(dependsOn: A) << {
println "Hello from B"
}
Lägga till `beroende på: orsaker:
- uppgift B beror på uppgift A
- Se till att utföra
A
uppgift varje gång innanB
uppdraget genomförs.
Och utgången är:
> gradle -q B
Hello from A
Hello from B
Lägga till beroenden från ett annat projekt
project('projectA') {
task A(dependsOn: ':projectB:B') << {
println 'Hello from A'
}
}
project('projectB') {
task B << {
println 'Hello from B'
}
}
För att hänvisa till en uppgift i ett annat projekt, prefixerar du namnet på uppgiften med sökvägen för projektet som det tillhör :projectB:B
Och utgången är:
> gradle -q B
Hello from A
Hello from B
Lägga till beroende med hjälp av uppgiftsobjekt
task A << {
println 'Hello from A'
}
task B << {
println 'Hello from B'
}
B.dependsOn A
Det är ett alternativt sätt att definiera beroendet istället för att använda uppgiftsnamnet .
Och utgången är densamma:
> gradle -q B
Hello from A
Hello from B
Lägga till flera beroenden
Du kan lägga till flera beroenden.
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 kan du definiera en uppsättning beroende:
B.dependsOn A
C.dependsOn B
D.dependsOn C
Utgången är:
> gradle -q D
Hello from A
Hello from B
Hello from C
Hello from D
Andra exempel:
B.dependsOn A
D.dependsOn B
D.dependsOn C
Utgången är:
> gradle -q D
Hello from A
Hello from B
Hello from C
Hello from D
Flera beroenden med metoden dependOn
Du kan lägga till flera beroenden.
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'
}
Utgången är:
> gradle -q D
Hello from A
Hello from B
Hello from C
Hello from D