./gradle tasks
liste «certaines» des tâches. En regardant
http://gradle.org/docs/current/userguide/java_plugin.html, il y en a cachés qui ne sont pas répertoriés. De plus, d'autres plugins n'auront pas un si joli graphique des dépendances entre les tâches.
Y a-t-il un moyen de
- lister toutes les tâches dans tous les plugins avec gradle
- lister les tâches et les tâches dont elles dépendent (un peu comme celles des maven
dependency:tree
mais pour les tâches)
pour cela, vous pouvez utiliser
--dry-run
(ou-m
) l'option qui répertorie les tâches qui sont exécutées dans l'ordre pour une commande particulière, mais n'exécute pas la commande, par exemplevous pouvez en trouver plus ici
la source
Vous pouvez essayer le plugin com.dorongold.task-tree avec une utilisation simple:
Exemple de résultat du readme :
la source
--no-repeat
. Source: github.com/dorongold/gradle-task-treeVous pouvez coller ceci dans votre
build.gradle
:ou ceci dans votre
build.gradle.kts
:Ensuite, exécutez votre tâche avec gradle:
Et vous devriez voir ceci:
la source
A <- B <- (C and D)
, cela vous montreraB-A, C-B, D-B
. Cela aide encore certains!L'arborescence des tâches gradle peut être visualisée par
gradle tasks --all
ou essayez les plugins suivants:Graphiques Gradle et Talaiot: Regardez ceci: https://proandroiddev.com/graphs-gradle-and-talaiot-b0c02c50d2b1 blog car il répertorie graphiquement les tâches et les dépendances. Cela utilise l' outil gratuit Graphviz ouvert Gephi ( https://gephi.org/features/ )
gradle-task-tree : https://github.com/dorongold/gradle-task-tree et
gradle-visteg : https://github.com/mmalohlava/gradle-visteg
Plug- in gradle-visteg : Le fichier généré peut être post-traité via l' utilitaire Graphviz
dot
.Par exemple , une image png est produite comme suit:
cd build/reports/; dot -Tpng ./visteg.dot -o ./visteg.dot.png
Pour plus d'informations, veuillez visiter la page d'accueil de Graphviz .
Quelles que soient les tâches réellement utilisées pour exécuter une tâche (par exemple:)
build
peuvent être visualisées dans une belle page HTML en utilisant l'--profile
optiongradle --profile clean build
Une fois cette opération terminée, accédez au dossier build / reports / profile et parcourez le fichier .html. Vous verrez la résolution des dépendances et d'autres informations avec le temps nécessaire dans une belle page html.
la source
Vous pouvez accéder par programme au graphique de tâches pour l'inspecter dans le script de construction à l'aide de Gradle.getTaskGraph ()
la source
Au fur et à mesure que votre multiprojet grandit, la solution que j'ai marquée comme correcte devient un peu désagréable et difficile à lire
Au lieu de cela, je suis passé à l'examen d'un projet spécifique, ce qui facilite grandement
où 'full-httpproxy' est le nom de mon projet (et répertoire comme d'habitude).
Cependant, je suis curieux de savoir comment répertorier les tâches du projet maître / racine et j'ai également une question en suspens ici.
Comment lister toutes les tâches du projet maître uniquement dans Gradle?
car cela ne semble pas possible pour le moment.
la source
Vous pouvez également ajouter le plugin suivant pour votre environnement local build.gradle, https://github.com/dorongold/gradle-task-tree
la source
Suite à la réponse de cstroe, ce qui suit imprime également les fichiers d'entrée et de sortie de chaque tâche Gradle. Ceci est utile car les dépendances sont parfois définies par des relations d'entrée / sortie. Par exemple, si la tâche B utilise les sorties de la tâche A, la réponse de cstroe ne vous montrera pas la dépendance. Ce qui suit est très primitif, mais affiche la liste des fichiers d'entrée et de sortie pour chaque tâche:
la source