206 votes

Comment puis-je obtenir une liste des cibles de construction dans Ant ?

Ma base de code a une longue build.properties écrit par quelqu'un d'autre. Je veux voir les cibles construites disponibles sans avoir à chercher manuellement dans le fichier. Est-ce que Ant a une commande pour cela - quelque chose comme ant show-targets - qui lui fera lister toutes les cibles dans le fichier de construction ?

277voto

Grodriguez Points 9945

Le site -p o -projecthelp fait exactement cela, vous pouvez donc essayer :

ant -p build.xml

Depuis la ligne de commande de ant documentation :

Le site -projecthelp affiche une liste des cibles du fichier de construction. Les cibles qui incluent un description sont répertoriés comme "cibles principales", ceux qui n'ont pas d'attribut description sont répertoriés comme "Autres cibles", alors la cible "par défaut" est répertoriée (les "Autres cibles" ne sont affichées que s'il n'y a pas de cibles principales, ou si Ant est invoqué dans la section -verbose o -debug ).

36 votes

Pour que cela soit la valeur par défaut lorsque l'on invoque simplement ant créer une cible comme <target name="help"> <java classname="org.apache.tools.ant.Main"> <arg value="-projecthelp" /> <arg value="-buildfile" /> <arg value="${ant.file}" /> </java> </target> et faites de "help" la cible par défaut dans votre projet.

19 votes

Je pense qu'il est utile de noter que ant -p n'affichera que les cibles qui ont une description. Pour afficher toutes les cibles associées à une build.xml vous devez exécuter ant -p -v Aussi, ant -p build.xml est redondant. ant -p fera la même chose, et si vous n'êtes pas dans la build.xml vous devrez utiliser ant -p -buildfile path/to/build.xml de toute façon.

1 votes

Le site target name="help" fonctionne bien, mais pas lorsqu'il est exécuté dans l'environnement d'Eclipse Ant (il se bloque simplement, mais -diagnostics ou d'autres sont d'accord avec cela) :-( (pas de vm fork, Kepler avec ant 1.8.4 (2014-05-22) et également essayé avec ant 1.9.4 (2014-04-29)) (juste si vous vous demandez .... J'étais en train de créer un env ant autonome que j'aimerais tester au sein d'Eclipse ... bien sûr, j'ai mes... Vue sur la fourmi là)

36voto

stillLearning Points 114

Pour obtenir toutes les cibles dans le fichier de construction

ant -p -verbose

1 votes

Nous devons utiliser -p combiné avec -v si nous avons besoin de toutes les cibles (par toutes les cibles, j'entends les cibles sans description). si seules les cibles principales sont requises (par cibles principales, j'entends celles avec description), l'utilisation de -p seul fait l'affaire.

2 votes

Je ne pouvais pas voir les cibles dont j'ai besoin avec seulement -p, ceci fonctionne parfaitement.

16voto

rjmunro Points 10522

Le site -p o -projecthelp fait exactement cela, donc vous pouvez le faire :

ant -p build.xml

Vous pouvez faire une cible pour invoquer ceci comme :

<target name="help">
    <java classname="org.apache.tools.ant.Main">
        <arg value="-projecthelp" />
        <arg value="-buildfile" />
        <arg value="${ant.file}" />
    </java>
</target>

que vous pouvez ensuite définir comme la valeur par défaut, de sorte que le simple fait de taper ant listera les cibles disponibles.

(En combinant la réponse de @Grodriguez et le commentaire de @sschuberth - j'ai pensé qu'il valait la peine d'une réponse à lui seul)

5 votes

Petite suggestion : faites de la cible "help" la cible par défaut. En conséquence, l'exécution de "ant" invoquera la cible "help" qui affichera toutes les cibles disponibles.

8voto

pvandenberk Points 1199

Ou visuellement en utilisant http://ant2dot.sourceforge.net/ :-)

1voto

Jainesh Patel Points 1

Vous pouvez vérifier la liste des cibles et des cibles par défaut dans build.xml par la commande suivante

ant -p built.xml

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X