User Tools

Site Tools


2013_2014:lp:idse:gl:td:ant

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
2013_2014:lp:idse:gl:td:ant [2013/08/08 23:21]
blay [Premier fichier build.xml]
2013_2014:lp:idse:gl:td:ant [2013/08/09 13:52] (current)
blay [Autres]
Line 1: Line 1:
 ====== Introduction à Ant ====== ====== Introduction à Ant ======
  
-D'​après http://​www.fil.univ-lille1.fr/​~routier/​enseignement/​licence/​pl/​tdtp/​tp_ant.pdf+**D'​après http://​www.fil.univ-lille1.fr/​~routier/​enseignement/​licence/​pl/​tdtp/​tp_ant.pdf**
  
 ===== Qu’est ce que ant ? ===== ===== Qu’est ce que ant ? =====
Line 62: Line 62:
  
  
-**Exercice 1 :**+==== Exercice 1 : tâches de base ==== 
   -  Dans une console, tapez ''​ant initialization''​ dans le répertoire qui contient le build. Observez maintenant le contenu du répertoire.   -  Dans une console, tapez ''​ant initialization''​ dans le répertoire qui contient le build. Observez maintenant le contenu du répertoire.
   - Supprimez le répertoire ''​classes''​ puis exécutez la commande ''​ant''​ sans argument. Observez le contenu du répertoire courant puis du répertoire ''​classes''​.   - Supprimez le répertoire ''​classes''​ puis exécutez la commande ''​ant''​ sans argument. Observez le contenu du répertoire courant puis du répertoire ''​classes''​.
   -  En utilisant la commande ''​ant delete'',​ écrivez une cible "​clean"​ qui supprime le répertoire ''​classes''​. (vous pouvez voir à la fin du [[http://​www.fil.univ-lille1.fr/​~routier/​enseignement/​licence/​pl/​tdtp/​tp_ant.pdf|TD]] la syntaxe des principales tâches ant, ou bien regarder directement sur http://​ant.apache.org/​manual/​ ''​(delete)''​.   -  En utilisant la commande ''​ant delete'',​ écrivez une cible "​clean"​ qui supprime le répertoire ''​classes''​. (vous pouvez voir à la fin du [[http://​www.fil.univ-lille1.fr/​~routier/​enseignement/​licence/​pl/​tdtp/​tp_ant.pdf|TD]] la syntaxe des principales tâches ant, ou bien regarder directement sur http://​ant.apache.org/​manual/​ ''​(delete)''​.
   - Modifiez maintenant le fichier ''​build.xml''​ de façon à ce que la cible ''​clean''​ soit exécutée à chaque appel de la cible ''​compile''​((utilisez la virgule pour séparer plusieurs dépendances)). Re-testez le tout. Attention, à la fin de la compilation,​ le répertoire ''​classes''​ doit évidemment exister.   - Modifiez maintenant le fichier ''​build.xml''​ de façon à ce que la cible ''​clean''​ soit exécutée à chaque appel de la cible ''​compile''​((utilisez la virgule pour séparer plusieurs dépendances)). Re-testez le tout. Attention, à la fin de la compilation,​ le répertoire ''​classes''​ doit évidemment exister.
-  - En utilisant la commande ''​ant java'',​ écrivez une cible ''​run''​ qui compile le projet et qui exécute Demo. Modifiez ​également l’entête du fichier build.xml de façon à ce que cette cible soit exécutée par défaut. +  - En utilisant la commande ''​ant java'',​ écrivez une cible ''​run''​ qui compile le projet et qui exécute ​''​jug.util.Demo''​Modifiez ​également l’entête du fichier ​''​build.xml'' ​de façon à ce que cette cible soit exécutée par défaut. 
-  - Modifiez maintenant le fichier ''​build.xml''​ de façon à ce que la compilation prenne également en compte les tests. ​Re-testez ​le tout+  - Ajouter une cible qui produit le .jar (voir http://​skebir.developpez.com/​tutoriels/​java/​ant/#​LIII-C) puis une autre qui l'​exécute. 
 +Pour que le fichier jar du projet soit exécutable,​ il faut lui ajouter un fichier Manifest.  
 +<​code>​  
 +<​manifest>​ 
 + <​attribute name="​Main-Class"​ value="​jug.util.Demo"/>​ 
 +</​manifest>​ 
 +</​code>​ 
 + 
 +==== Exercice 2 : Ant et JUnit ==== 
 +<note warning>​Non terminé en particulier les fichiers d'​exemples ne semblent pas correspondre au bon JUNIT il faudrait etre en junit.4... Mais le ant fonctionne 
 +</​note>​ 
 +  - Modifiez maintenant le fichier ''​build.xml''​ de façon à ce que la compilation prenne également en compte les tests. ​ 
 +  ​Ajouter une cible ''​runtests''​ qui utilise la commande junit. 
 + 
 + 
 +===== Integration de ant à Eclipse `=====  
 +Nous allons maintenant voir comment utiliser en même temps ant et eclipse. 
 +  - Lancez eclipse.  
 +  - Choisissez File -> New -> Java -> Java Project.  
 +  - Donnez un nom au nouveau projet, puis sélectionner la localisation existante,​ 
 +  - Cliquez sur Next puis sur Finish. L’exemple de la section précédente est maintenant importé dans eclipse. 
 +  - Vous pouvez maintenant voir le nouveau projet dans l’onglet package explorer sur la gauche. Remarquez que le fichier build.xml apparaît dans l’arborescence du projet. Double cliquez pour l’ouvrir. 
 +  - Le fichier est reconnu automatiquement comme un fichier ant. 
 +  - Placez vous par exemple sur une nouvelle ligne en dessous de ''<​target name="​initialization">''​ puis exécutez la combinaison ctrl + espace au clavier. Vous voyez apparaître la liste possible des balises ant autorisées à cet endroit. 
 +  - Cliquez maintenant sur Window -> Show view -> Ant. Une nouvelle fenêtre nommée Ant apparaît dans votre espace de travail.  
 +  - Faites un clic droit dedans et sélectionnez Add buildfiles....ou bien sélectionner un fichier et faîtes le glisser. 
 +  - Ajoutez alors le fichier ''​build.xml''​ de l’exemple 1. Vous voyez apparaître la liste des tâches ant que vous avez définies auparavant. Vous pouvez faire un clic droit sur chacune des tâches et les exécuter (Run as -> Ant build). Des raccourcis pour ces fonctionnalités sont disponibles sous forme d’icônes dans la fenêtre Ant. 
 + 
 + 
 +===== Autres ===== 
 + 
 + 
 +  - Ajoutez une cible doc au projet. Cette cible doit générer automatiquement la javadoc du projet dans un répertoire docs dont le nom doit être facilement paramétrable. N’oubliez pas de mettre à jour la cible clean pour qu’elle supprime ce répertoire. 
 +  - En vous inspirant de l’exemple ci-dessous, créez une nouvelle cible distribution qui crée une archive tar contenant le répertoire src, le répertoire rapport et le fichier build.xml. 
 +<​code>​ 
 +<tar destfile="​test.tar">​ 
 +<fileset dir="​.">​ 
 +<include name="​unFichier.txt"/>​ 
 +<include name="​unRepertoire/​**"/>​ 
 +</​fileset>​ 
 +</​tar>​ 
 +</​code>​ 
 + 
 +===== Références ===== 
 + 
 +http://​www.fil.univ-lille1.fr/​~routier/​enseignement/​licence/​pl/​tdtp/​tp_ant.pdf 
 + 
 +http://​www.vogella.com/​articles/​ApacheAnt/​article.html 
 + 
 +http://​membres-liglab.imag.fr/​donsez/​cours/​ant.pdf
2013_2014/lp/idse/gl/td/ant.1375996886.txt.gz · Last modified: 2013/08/08 23:21 by blay