Formation Maven

Mettre en œuvre l'intégration continue avec Maven

Objectifs de la formation Maven

Fournir les réflexes et le savoir-faire permettant d'intégrer facilement un projet impliquant MAVEN 3

Programme de la formation Maven

Introduction

Définition de Maven pour un développeur

Définition de Maven pour un chef de projet

La règle du « Convention over configuration » dans Maven

La valeur ajoutée de Maven par rapport à ANT

Le POM (Project Object Model)

Présentation du modèle POM Maven et notion de coordonnées

Les détails et les sections du fichier pom.xml de Maven

Le « super POM » et les mécanismes d’héritage de Maven

L'exploration de la structure des projets Maven

Les types de projets Maven

La notion de propriétés et de filtre des ressources dans Maven

Repository Maven et coordinations

Repository local de Maven : .m2/repository

Le mécanisme de localisation d’une librairie dans Maven

La notion de repositories distants

L'outillage pour la gestion du cache et de la sécurité avec Nexus

La mise en place de Maven

Le modèle de gestion des dépendances

La dépendance transitive dans Maven

L'optimisation des dépendances dans Maven

Le cycle de construction d’un projet Maven

Les différents cycles de construction

Comprendre les phases / goals /cycles Maven

L'exécution de plugins

Maven : une plateforme d’exécution de plugins

La configuration plugins et cycle de construction Maven

Connaître les taches d’un plugin Maven

La mise en œuvre plugins Maven

Les profils

Définition et intérêt des profils Maven

La configuration et mise en œuvre de profils Maven

La technique du filtrage de ressources

Présentation des bonnes pratiques Maven

Le développement de plugins

La création d’un plugin Maven en Java

L'extension pour la création d’un type de projet

Le débugging de l’exécution d’un plugin dans un IDE

Archetype et Assemblies

Définition et spectre des archetypes existants

La génération de livrable à la demande

La gestion de configuration dans Maven

La communication avec un gestionnaire de sources

La fabrication d’un livrable et détails des prérequis

L’exécution des tests

L'organisation Maven pour les tests d’intégration et fonctionnels

La mise en œuvre du debugging des tests dans Eclipse

Les tests d’intégration application web démarré par Maven

Les rapports

La génération site du projet Maven et déploiement

Rapport des différents modules du projet Maven

Rapport couverture de test dans Maven

Rapport couverture de code dans Maven

Rapport détection de bugs dans Maven

Rapport respect normes développement (Sun, IBM...) dans Maven

Injection des rapports dans Sonar

Les tests

Plugin surefire : déclaration et configuration

Tests unitaires avec Junit4 et TestNG

Tests unitaires : phase ’test’

Test d’intégration : phase ’integration-test’

Les phases pre-integration et post-integration

Les patterns de fichiers

Le profil pour test intégration

Plugins clover, emma, cobertura

Plugin Selenium et intégration client selenium-rc

Le déploiement multiple avec Cargo

Maven dans les équipes de développement

Intégrer un projet Maven dans IDE Eclipse

Les différents modes d’utilisation de Maven avec les IDE Eclipse

Cas d’utilisation du plugin eclipse m2eclipse

Le graphe de dépendances

L'indexation et recherche rapide coordonnées

La sécurité mots de passe

Le téléchargement parallélisé

La sélection compilations amont/aval

L'intégration continue

Les problématiques et enjeux

Le rôle de Maven dans l’intégration continue

Les balises ciManagement et distributionManagement

Les outillages et mise en pratique avec Hudson

Les concurrents d’hudson

Nexus

La notion de Repository Manager

Les versions : Open Source, Professionnel

La comparaison avec Archiva / Artifactory

La mise en œuvre en 5 étapes

Le contrôle d’accès aux artifacts

Les répertoires, groupes, rapports

La configuration miroirs

L'Intégration LDAP

La recherche artifacts

Upgrade

Le guide de dépannage

Que faire en cas d’erreur ?

La méthode de résolution de pb.

Options -q, -e, iX

Plugin help

Connaître le pom effectif, le profil effectif et le settings effectif

Les limites

Contrainte projets modernes

Maven : manque de flexibilité

Le successeur : Graddle

Faites-nous part de votre projet de formation,
nous sommes là pour vous guider.