Objectifs pédagogiques
- Apprendre à utiliser Apache Maven
- Connaître le POM, Repository Maven et les coordinations
- Utiliser les modèles de gestion des dépendances
- Gérer les configurations
- Exécuter des tests
- Faire de l'intégration continue avec Maven
Programme de la formation
Introduction
Définition et intégration dans le cycle de vie des projets
Naissance de Maven : du script shell à Maven
Règle du « Convention over configuration »
Le POM (Project Object Model)
Mécanisme de gestion des objets
Détail de la fiche projet : le fichier pom.xml
Le « super POM » et les mécanismes d’héritage
Exploration de la structure des projets Maven
Les types de projets Maven (Simple, Web, d’Entreprise, …)
Notion de propriétés et de filtre des ressources
Repository Maven et coordinations
Mécanisme de localisation d’une librairie
Notion de repository et d’architecture organisationnelle
Le repository local et les repositories distants
Outillage pour la gestion du cache et de la sécurité avec Archiva
Mise en place
Pré-requis
Installation et présentation des différentes techniques de configuration
Modèle de gestion des dépendances
Exploration du mécanisme de gestion des dépendances et de transitivité
Optimisation des dépendances
Le cycle de construction d’un projet
Les différents cycles de construction
Comprendre les phases et le rattachement des goals Maven aux différents cycles
Exécution de plugins : une plateforme d’exécution de plugins
Comment configurer les plugins dans le but d’enrichir le cycle de construction ?
Les profils
Définition et intérêt des profils
Configuration et mise en œuvre
Présentation des bonnes pratiques
Développement de plugins
Création d’un plugin Maven en Java et attachement au cycle de construction
Extension pour la création d’un type de projet
Débugging de l’exécution d’un plugin dans un IDE
Cas de l’utilisation de Groovy comme langage alternatif pour l’écriture de plugins
Archétype et Assemblies
Définition et spectre des archétypes existants
Génération de livrable à la demande
La gestion de configuration
Communication avec un gestionnaire de sources
Fabrication d’un livrable et détails des pré-requis
L’exécution des tests
Organisation Maven pour les tests d’intégration et fonctionnels
Mise en œuvre du debugging des tests dans Eclipse lancés par Maven
Cas d’exemple de tests d’intégration s’exécutant au sein d’un navigateur Web
Les rapports
Maven permet de générer le site Maven
génération de rapports : Javadoc, couverture de code, détection de bugs, normes de dev.
Principe d’une gestion pro active
Techniques de déploiement du site
Maven dans les équipes de développement
Les différents modes d’utilisation de Maven avec les IDE Eclipse
Cas d’utilisation du plugin m2eclipse
Intégration continue
Problématiques et enjeux
Outillages et mise en pratique avec Jenkins
Limites, avantages et futures évolutions
Comparaison avec l’outil de build Gradle
Gestion d’un build incrémental

Proposé par
Sparks
"Tout l'IT, vraiment tout"

Proposé par
Sparks
