| Ant et Ivy |
| Packager une application avec Ant et Ivy |
Référence : ANT-IVY-02
Durée : 2 jour(s) |
|
|
|
Grégory Boissinot est un spécialiste des outils de build et des problématiques d'intégration continue qu'il a mis en place à grande échelle. Grégory possède une expérience industrielle grand compte de ces problématiques et contribue activement à la communauté Open Source dans ce domaine en étant commiteur Hudson et Sonar.
Pour en savoir plus
|
|
|
Objectifs
- Comprendre et analyser un projet utilisant Ant et Ivy
- Savoir produire les scripts de build pour packager et déployer ces applications Java/JEE
- Utiliser Ant et Ivy pour l'exécution des tests unitaires et des tests d'intégration
- Adosser le couple Ant/Ivy à un moteur d'intégration continue comme Hudson
|
Contenu
Introduction
- Présentation et historique de l'outil de build Ant
- Présentation du gestionnaire de dépendance Ivy
- Contexte d'utilisation des deux outils
Le descripteur de script Ant
- Choix du langage de description Xml
- Structure du fichier build.xml
- Définition de la notion de cibles (target), de tâches (tasks) et de propriétés
- Invocation de Ant en ligne de commandes
- Panorama des options possibles
Construction d'une bibliothèque Java avec Ant
- Gestion des path et des classpath
- Présentation des tâches Ant prédéfinies (tâches Java, tâches de manipulation de fichiers, ...)
- Chaînage de cibles et idempotence
- Création des cibles de compilation, de packaging et d'exécution
Le gestionnaire de dépendance Ivy
- Présentation du descripteur ivy.xml
- Gestion de configuration avec le fichier ivy.settings
- Détails des différents types de repository
- Local, shared et repository public
- Utilisation du repository central de Maven
- Exploration des techniques de recherche de librairies
- Incorporation de Ivy dans Ant
- Le namespace Ivy
- Les tâches Ivy de Ant (retrieve, cleancache, ...)
- Gestion des conflits
Installation et Configuration
- Installation et configuration du couple Ant/Ivy
- Intégration dans les IDE Eclipse et IDEA IntelliJ
Utilisation de Ant durant les phases de tests
- Exemple de compilation et d'exécution de tests unitaires
- Mise en pratique avec Junit et TestNG
- Exemple d'exécution des tests d'intégration avec Selenium
Script de build d'une application Java/JEE
- Implémentation d'un cycle de construction
- Récupération des sources du projet depuis un gestionnaire de source comme Subversion
- Savoir gérer un projet muti-module
- Création d'une archive jar, war et ear
- Déploiement dans un container Web avec Cargo
Flexibilité et réutilisation
- Notion de conditions et de boucles dans le script de build Ant
- Création de macros Java
- Utilisation d'un langage de script alternatif
Utilisation dans un processus d'intégration continue
- Principe de l'automatisation d'une chaine de build complète avec Ant/Ivy
- Mise en pratique avec Hudson et Subversion
- Génération de métriques sémantiques depuis Ant/Ivy et visualisation dans Hudson
- Génération des rapports des dépendances des projets
Limites, avantages et futurs évolutions
- Comparaison avec les outils de build Maven et Gradle
- Peut-on utiliser le couple Ant/Ivy pour des projets C, C+, Ada, ...?
- Introduction au langage Groovy et à l'outil de build Gant
|
| * Le déjeuner est compris dans le tarif. |
| ** Les livres sont offerts uniquement pour les formations inter-entreprise. Zenika se réserve le droit de changer le livre proposé à tout moment. |
|
|
|
|