Description
Maven est aujourd’hui l’outil de référence pour gérer le cycle de vie des projets Java, en regroupant un ensemble d’outils, de conventions efficaces et de bonnes pratiques de développement. Cette formation pratique vous permettra d’acquérir une maîtrise solide de sa configuration ainsi que de comprendre son rôle essentiel dans une approche d’intégration continue.
Objectifs
- Structurer un projet Java avec Maven, depuis sa création jusqu'à sa publication
- Gérer efficacement les dépendances et les repositories utilisés
- Générer automatiquement le site associé à un projet Maven
- Produire et personnaliser des rapports de qualité sur le projet
- Intégrer Maven dans un processus d'intégration continue (ex. avec Jenkins)
Récapitulatif
Public
Développeurs Java, aux architectes techniques et aux chefs de projet impliqués dans des développements Maven.
Prérequis
Bonne connaissance du langage Java.
Connaissance de la plateforme JEE recommandée.
Méthodes et modalités pédagogiques
Formation réalisée en Présentiel, Distanciel ou Dual-Learning selon la formule retenue.
Moyens et supports pédagogiques
Mise à disposition d'un poste de travail sur nos formations en Présentiel.
Mise à disposition de nos environnements de visio sur nos formations en Distanciel
Remise d'une documentation pédagogique numérique pendant la formation
La formation est constituée d'apports théoriques, d'exercices pratiques et de réflexions
Dans le cas d'une formation sur site Entreprise, le client s'engage à avoir toutes les ressources pédagogiques nécessaires (salle, équipements, accès internet, TV ou Paperboard...) au bon déroulement de l'action de formation conformément aux prérequis indiqués dans le programme de formation
Modalités de suivi et d'évaluations
Auto-positionnement des stagiaires avant la formation
Émargement des stagiaires et formateur par 1/2 journée
Exercices de mise en pratique ou quiz de connaissances tout au long de la formation permettant de mesurer la progression des stagiaires
Auto-évaluation des acquis de la formation par les stagiaires
Questionnaire de satisfaction à chaud et à froid à l'issue de la formation
Programme détaillé
Comprendre Maven et son positionnement
- Présentation de Maven et de ses objectifs
- Philosophie des conventions plutôt que la configuration
- Notion de cycle de vie d'un projet Java
- Apports de Maven en termes de standardisation et de qualité
- Place de Maven dans une démarche d'intégration continue
- Travaux pratiques : Analyse d'un projet Java et identification des bénéfices d'un build Mavenisé
Mise en place d'un projet Maven
- Installation et configuration de Maven
- Structure standard d'un projet Maven
- Présentation des principales commandes Maven
- Création d'un projet à partir d'un archétype
- Travaux pratiques : Création et exécution d'un premier projet Maven
Le fichier POM (Project Object Model)
- Rôle et structure du fichier POM
- Coordonnées du projet et type de packaging
- Gestion des propriétés et des versions
- Introduction aux plugins et extensions
- Travaux pratiques : Modification et enrichissement du POM d'un projet existant
Gestion des dépendances
- Déclaration des dépendances
- Gestion des dépendances transitives
- Notion de scope des dépendances
- Résolution des conflits de versions
- Travaux pratiques : Analyse de l'arbre des dépendances et résolution de conflits
Repositories Maven
- Repository local et repository central
- Repositories distants et d'entreprise
- Publication et déploiement d'artefacts
- Présentation de Nexus et Artifactory
- Travaux pratiques : Configuration d'un repository distant et déploiement d'un artefact
Plugins, profils et projets multi-modules
- Plugins Maven les plus couramment utilisés
- Configuration et personnalisation des plugins
- Profils Maven et gestion des environnements
- Notions d'héritage et de projets multi-modules
- Travaux pratiques : Mise en place de profils et configuration de plugins adaptés
Génération de site et rapports
- Génération automatique du site Maven
- Personnalisation du site projet
- Production de rapports de tests et de qualité
- Exploitation des rapports pour le suivi du projet
- Travaux pratiques : Génération et consultation du site et des rapports Maven
Maven et l'intégration continue
- Principes de l'intégration continue
- Automatisation des builds et des tests
- Intégration de Maven avec Jenkins
- Bonnes pratiques pour les pipelines de build
- Travaux pratiques : Mise en œuvre d'un build Maven dans un environnement d'intégration continue