vers l'accueil formulaire de contact

Tutoriel ANT N°2 : votre premier build ANT

GIF - 53.5 ko

Maîtrisez pas à pas la mise en oeuvre de ANT dans un projet JAVA simple. Comprenez la création de cibles (target). Adaptez ANT à votre structure à vos codes sources. Identifiez les commandes ANT utiles. Créez les cibles init, compile, clean. Livrez votre projet sous forme de JAR. Automatisez enfin le lancement de votre programme.

Ce tutoriel est extrait des séances pratiques de la formation Intégration continue et méthodes agiles

Les + objis
- 70% de travaux pratiques
- Clé USB avec tous les outils utilisés + Corrigés TPs
- Bilan pédagogique individuel + conseils

Liens utiles

- Tutoriel et formation ANT
- Tutoriaux Objis, le spécialiste formation Java

Prérequis

- Tutoriel ANT N°1 : Installation ANT

Objectifs

- Créer un fichier build.xml simple
- Ajouter des cibles au fichier build.xml
- Imposer une structure d’arborescence
- Controller la quantité d’informations affichées
- Lancez un programme via ANT
- Créer une archive JAR

Programme

- Partie 1 : premier build
- Partie 2 : second build
- Partie 3 : commandes utiles & compétences ANT

Durée

- 15 min

Premier build

- Dans un répertoire c :\formationant\tutoriels\tutoriel2, créez répertoire ’premierbuild’ contenant un fichier xbuild.xml et un fichier Main.java

PNG - 6.9 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-0

Code fichier Main.java

PNG - 6 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-1

Code fichier build.xml

PNG - 4.3 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-2
Zip - 572 octets
premierbuild

- Avec l’invite de commande , allez dans le répertoire ’premierbuild’ et lancez la commande : ant compile.

PNG - 4.5 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-3

- Analysez à nouveau le répertoire premierbuild

PNG - 8.3 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-4bis

- Supprimez le fichier Main.class
- Toujours en ligne de commande, lancez simplement la commande : ant

PNG - 4.3 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-4

QUESTION : pourquoi obtenez-vous le même résultat que lors de la commande : ant compile ?

REPONSE : attribut ’defaut’ de la balise ’project’ du build.xml

Avoir infos de compilation

- Supprimez Main.class
- Lancez la commande : ant -verbose

PNG - 42.7 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-6

- Lancez à nouveau : ant -verbose

PNG - 18 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-7

Pourquoi les deux dernières sorties log de ant -verbose diffèrent ?

Imposer une arborescence

- Mettre le code source Main.java dans un package et arborescence

PNG - 9 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-8

- Adaptez le Main.java

PNG - 7 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-9

- Mise à jour et ajout de cibles ANT

PNG - 18.6 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-10

QUESTION : quelle est la cible par défaut ?

REMARQUE : notez les dépendances entre cibles (attribut ’depends’)

- Nouvelle structure projet

PNG - 6.6 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-11

- Lancez la commande : ant

PNG - 9.1 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-11bis

- expliquez

PNG - 9 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-12

- Expliquez

PNG - 5.7 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-13

- Expliquez

PNG - 5.8 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-14

Lancement de l’application

- Lancez l’application avec commande : ant execute

PNG - 6.9 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-15

- Expliquez

Nettoyage

- Nettoyez les répertoires créés par les cibles précédentes

PNG - 6.3 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-16

- Expliquez

PNG - 58.8 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-17

Ajouter une description aux cibles

- Expliquez l’effet de la commande : ant -projecthelp

- Modifiez le build.xml en y ajoutez une ’description’ pour chaque cible :

PNG - 22.3 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-18

- Lancez à nouveau la commande : ant -projecthelp

PNG - 5.7 ko
tutoriel-ant-premiere-compilation-automatisation-tache-ant-19

QUESTION : pourquoi la cible init n’apparaît pas ? Comment la faire apparaître ?

QUESTION : Quelle valeur ajoutée de cette commande (ant -projecthelp) ? Quand pourrait’elle être utile dans un projet ?

Zip - 1.3 ko
secondbuild

Contrôler la quantité d’information affichée

- Expliquez l’effet de la commande suivante sur les traces générées : ant -emacs
- Expliquez l’effet de la commande suivante sur les traces générées : ant -quiet
- Expliquez la tache ’echo’, et en particulier testez les 5 valeurs possibles de l’attribut ’level’ niveaux de trace : debug, verbose, info, warning, error. Quel est l’attribut par défaut ? Quels niveaux sont prioritaire en cas de ant -quiet ?

Conclusion

Dans ce tutoriel, vous avez mis ANT en pratique avec 2 projets.

En complément de ce tutoriel ANT, notre formation Intégration continue et méthodes agiles vous permettra de compléter des compétences ANT ’de base’ :

- Créer un fichier de build simple avec une seule cible (target)
- Imposer une cible par défaut
- Obtenir des informations d’un build (-v)
- Imposer une structure de projet (répertoire src, code source dans packages...)
- Préparer une arborescence pour le build (src, build, dist)
- Créer une livraison jar (cible ’archive’)
- Identifier et résoudre des problèmes de build liés à un fichier XML non valide
- Créer une cible ’clean’
- Comprendre les dépendances entre les cibles (depends)
- Identifier un pb de dépendance circulaire
- Comprendre la notion de build incrémental de ANT
- Comprendre le chainage de cibles ( ant clean execute)
- Exécuter un programme (cible ’execute’)
- Comprendre les règles de nommage de cibles
- Comprendre la balise echo
- Controler la quantité d’informations fournies
- Citer 10 options de ligne de commande ANT et leur cas d’utilisation
— ant -verbose
— ant -buildfile monbuild.xml
— ant - debug
— ant -keep-going
— ant -Dproperty=valeur
— ant -propertyfile
— ant -version
— ant -logfile
— ant -quiet
— ant -noclasspath

Pour aller plus loin

Le chemin le plus court pour avoir les réflexes et la méthodologie d’un bon intégrateur Java/j2ee :

GIF - 53.5 ko

Calendrier formations Objis 2010

PNG - 22.2 ko
calendrier-formations-java-j2ee-objis-2010