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
Last revision Both sides next 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 01:12]
blay [Introduction à Ant]
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 gaucheRemarquez 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>​ 
 + 
2013_2014/lp/idse/gl/td/ant.txt · Last modified: 2013/08/09 13:52 by blay