Chapitre Premiers pas avec Gradle Les dépendances entre les tâches {{ resumeCollapse ? '-' : '+' }} Résumé Cette leçon présente les dépendances entre les tâches. Dernière modification : Dec 08 , 2024 {{ !slideMode ? "Passer en mode diapositive" : "Passer en mode lecture" }} Les dépendances entre les tâches Created by Sylvain Leroy ## Localiser les tâches ## Rechercher une tâche ```language-gradle // Déclaration de tâches tasks.register("hello") tasks.register<Copy>("copy") // Rechercher la tache hello println(tasks.named("hello").get().name) // or just 'tasks.hello' if the task was added by a plugin // Rechercher la tache de type Copy et avec le nom copy println(tasks.named<Copy>("copy").get().destinationDir) ``` ## Rechercher les tâches par type ```language-gradle // Rechercher les tâches de type Tar tasks.withType<Tar>().configureEach { enabled = false } // Ajout des tâches de type Copy comme dépendances. tasks.register("test") { dependsOn(tasks.withType<Copy>()) } ``` ## Ajouter une dépendance ### Types de dépendances * Soit indiquer la dépendance d'une tâche à un autre avec **`dependsOn`** * Soit indiquer qu'une tâche doit être exécutée après tous les autres (moins strict) **`shouldRunAfter`** * Soit indiquer qu'une tâche doit être exécutée après tous les autres **`mustRunAfter`** ### Equivalent Gradle ```language-gradle tasks.register("Compile") { description="Compile task" group="Custom" doLast { println("Compile") } } tasks.register("Tests") { description="Custom task" group="Custom" doLast { println("Tests") } } tasks.register("Packaging") { description="Packaging task" group="Custom" doLast { println("Packaging") } } tasks.register("Publication") { description="Publication task" group="Custom" doLast { println("Publication") } } tasks.register("Deploiement") { description="Deploiement task" group="Custom" doLast { println("Déploiement") } } ``` ### Voir les exercises pour plus de détails # Fin de la leçon Les dépendances entre les tâches Created by Sylvain Leroy ## Localiser les tâches ## Rechercher une tâche ```language-gradle // Déclaration de tâches tasks.register("hello") tasks.register<Copy>("copy") // Rechercher la tache hello println(tasks.named("hello").get().name) // or just 'tasks.hello' if the task was added by a plugin // Rechercher la tache de type Copy et avec le nom copy println(tasks.named<Copy>("copy").get().destinationDir) ``` ## Rechercher les tâches par type ```language-gradle // Rechercher les tâches de type Tar tasks.withType<Tar>().configureEach { enabled = false } // Ajout des tâches de type Copy comme dépendances. tasks.register("test") { dependsOn(tasks.withType<Copy>()) } ``` ## Ajouter une dépendance ### Types de dépendances * Soit indiquer la dépendance d'une tâche à un autre avec **`dependsOn`** * Soit indiquer qu'une tâche doit être exécutée après tous les autres (moins strict) **`shouldRunAfter`** * Soit indiquer qu'une tâche doit être exécutée après tous les autres **`mustRunAfter`** ### Equivalent Gradle ```language-gradle tasks.register("Compile") { description="Compile task" group="Custom" doLast { println("Compile") } } tasks.register("Tests") { description="Custom task" group="Custom" doLast { println("Tests") } } tasks.register("Packaging") { description="Packaging task" group="Custom" doLast { println("Packaging") } } tasks.register("Publication") { description="Publication task" group="Custom" doLast { println("Publication") } } tasks.register("Deploiement") { description="Deploiement task" group="Custom" doLast { println("Déploiement") } } ``` ### Voir les exercises pour plus de détails # Fin de la leçon Slideshow Aperçu Documentation et resources Manuel utilisateur : lien Documentation DSL : Groovy, Kotlin Leçon précédente Prochaine leçon Please enable JavaScript to view the comments powered by Disqus.