La construction avec Gradle est divisée en trois phases: l'initialisation, la configuration et l'exécution, et la construction est effectuée dans cet ordre.
Surtout la phase de réglage et la phase d'exécution sont facilement confondues, Si vous n'êtes pas conscient de la distinction, les paramètres build.gradle que vous avez écrits peuvent ne pas fonctionner comme prévu.
Si vous écrivez ce qui suit dans build.gradle et exécutez gradle myTask
, comment sera-t-il sorti?
println name + ": " + "FIRST"
task myTask {
println name + ": " + "First"
doFirst {
println name + ": " + "doFirst block"
}
doLast {
println name + ": " + "doLast block"
}
println name + ": " + "Last"
}
println name + ": " + "LAST"
Le résultat est le suivant.
gradle-test2: FIRST
myTask: First
myTask: Last
gradle-test2: LAST
:myTask
myTask: doFirst block
myTask: doLast block
BUILD SUCCESSFUL
Dans l'exemple ci-dessus, doFirst et doLast ont été évalués dans la phase d'exécution, et les autres ont été évalués dans la phase de configuration.
Une autre méthode de description de tâche, myTask << {}
, est équivalente à doLast, mais il y a un avertissement qu'elle sera abolie à l'avenir dans l'environnement de gradle 3.3.
Recommended Posts