Formation Maven Automatiser la construction d'une application Java/JEE avec Maven

Objectifs

  • Comprendre le positionnement de Maven par rapport aux simples outils de build (ex: ANT)
  • Tirer la quintessence de Maven pour systématiser la gestion du cycle de vie d'un projet
  • Savoir enrichir le cycle de construction d'un projet
  • Savoir adosser Maven à un moteur d'intégration continue

Contenu

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 par Maven
  • 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, ...)
  • Les modules et la réutilisation des projets

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

Mise en place de Maven

  • Pré-requis
  • Installation et présentation des différentes techniques de configuration

Modèle de gestion des dépendances

  • Exploration du mécanisme des dépendances et de transitivité
  • Comprendre le fonctionnement de la résolution des versions

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

  • Maven : 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 oeuvre

Développement de plugins

  • Création d'un plugin et attachement au cycle de construction
  • Exemple de création d'un type de projet à partir d'un plugin Maven
  • Débugging de l'exécution d'un plugin dans un IDE

La gestion de configuration

  • Comment Maven communique avec un gestionnaire de sources?
  • Étude de cas avec l'utilisation du plugin « plugin maven-release »

L'exécution des tests

  • Exécution et paramétrages des tests
  • Mise en oeuvre du debugging des tests dans Eclipse lancés par Maven
  • Lancement des tests d'intégration s'exécutant au sein d'un navigateur Web démarré par Maven

Les rapports

  • Maven permet de générer le site Maven
  • Détails des différentes métriques : de la génération de la documentation Java à la couverture de code des tests, en passant par la détection de bugs
  • Modification de la charte graphique du site Maven

Utilisation de Maven dans des équipes de développement

  • Les différents modes d'utilisation de Maven dans les IDE
  • Exemple d'intégration avec Eclipse et IntelliJ
  • Outillage pour la gestion du cache et de la sécurité

Intégration continue

  • Problématiques et enjeux
  • Outillages et mise en pratique avec Hudson

Les futures évolutions de Maven

  • Déclaration simplifiée
  • Développement de plugin facilité

Durée

2 jours (14h)

Tarif (déjeuners inclus)

1200 € (HT)

Lieu

Paris 9ème

Répartition

30% théorie
70% pratique

Pré-requis

Connaissance de Java

Public

Architecte
Développeur
Chef de projet

Dates des sessions

7 au 8 février 2008
10 au 11 avril
5 au 6 juin
7 au 8 août
9 au 10 octobre
4 au 5 décembre

Inscription

Bulletin d'inscription

Intra-entreprise

Sur demande

Renseignements

+33(0)1.45.26.19.15
training@zenika.com