What are the aims of the training?
Training programme
Découvrir Maven
Maven : présentation, historique
Fonctions : build, gestion des dépendances, tests, documentation, liaison avec des outils,...
Maven vs outils de build
Description du projet : POM (Project Object Model)
Super POM, Héritage de POMs
Projet multi-modules
Repository local et repository distant
Maven et les IDEs : Eclipse, Netbeans,...
Atelier : Installation de Maven et configurations des référentiels (repositories)
Construire un projet avec Maven
Structure d'un projet ou d'un module
Modèles de projets (Archetype)
Principaux Plugins, Goals
Tests unitaires, d'intégration
Cycle de vie : compilation, test, assemblage, déploiement,...
Découpage d'un projet en modules
Encodage des fichiers : sources, ressources
Gestion des versoins, snapshots
Les profils
Empaquettage Déploiement d'un projet sur un serveur d'applications
Déploiement par copie : ssh, ftp
Maven et SCM (Source Code Management) : SVN, CVS, Git
Maven et l'intégration continue (Jenkins)
Atelier : création et gestion de projets Java/JEE dans un contexte d'intégration continue
Gérer les dépendances du projet
Déclaration de dépendance, portées
Dépendances transitives, dépendance optionnelles
Gestion des versions (patterns)
Gestion des conflits
Enregistrer un projet/ une archive en tant que dépendance dans le repository
Atelier : paramétrage de dépendances et gestion de conflits
Stocker les dépendances
Limites du default repository
Proxy Repositories
Gestion de priorités
Outils de gestion de repositories
Atelier : utilisation d'un proxy repository : Nexus ou Artifactory...
Générer le site web et des rapports du projet
Génération d'un site Maven (mvn site)
Plugin site et personnalisations
Rapports de tests (surfire)
Checkstyle, changelog, changes
PMD / CMD
Documentation technique (JavaDoc), sources (JXR)
Qualimétrie : Maven et Sonar
Atelier : Génération du site et de différents rapports sur le projet