Cours

Systèmes & Réseaux

Technologies Web

Outils


Filères

 

 

Maven

Maven est un outil logiciel libre de la fondation Apache conçu pour la gestion et l'automatisation de production des projets logiciels Java et Java EE. C'est le successeur de l'outil Ant, offrant des moyens de configuration plus simples, eux aussi basés sur le format XM, mais intégrant également des fonctionnalités de centre documentaire, et un système de gestion de composants accessibles depuis des dépôts publcis ou privés.

Objectifs

Ce cours doit permettre aux stagiaires d'acquérir les concepts et mécanismes fondamentaux de Maven et d'utiliser l'outil dans des contextes projetes personnalisés. Il permet en outre de comprendre le positionnement de Maven par rapport à Ant, de savoir enrichir le cycle de construction d'un projet, de savoir adosser un serveur d'intégration continue à ses projets Maven afin de réduire les problèmes d'intégration et d'améliorer la communication et la collaboration entre les différentes équipes.

programme rouge

Introduction

  • Les fonctionnalités clés de Maven
  • Historique des outils de build depuis le script shell
  • Positionnement vis à vis de ses concurrents
  • Détail de la règle du «Convention over configuration» et de ses implications pour les développeurs

Le POM (Project Object Model)

  • Détail de la fiche projet : le fichier pom.xml et des coordonnés Maven
  • Le «super POM» et les mécanismes d'héritage (avec le pom parent)
  • Exploration de la structure des projets Maven
  • Les types de projets Maven (Simple, Web, d'Entreprise, ...) et la gestion multi-modules

Repository Maven et coordinations

  • Gestion du stockage des librairies utilisées
  • Mécanisme de localisation d'une librairie
  • Le repository local et les repositories distants
  • Notion de repository manager

Mise en place de Maven

  • Installation et configuration de Maven
  • Les options de configuration du fichier 'settings.xml'
  • Configuration du repository manager Sonatype Nexus

Modèle de gestion des dépendances

  • L'ensemble des portées ('scope')
  • Règles de la gestion des versions
  • Transitivité et exclusion

Première mise en œuvre

  • Création d'une première construction Maven pour un projet Java et un projet Web multi-modules

Le cycle de construction d'un projet

  • Détail des différents cycles de construction
  • Savoir rattacher les goals des plugins aux phases des cycles de vie

Exécution de plugins

  • Maven : une plateforme d'exécution de plugins
  • Panorama des plugins les plus utiles
  • Configuration des plugins dans le but d'enrichir le cycle de construction

Archetype et Assemblies

  • La notion de squelette de projet
  • Panorama des archetypes les plus utiles
  • Détail l'assembly et exemple de mise en oeuvre

La gestion de configuration

  • Communication avec un gestionnaire de sources
  • Fabrication d'un livrable et détail des pré-requis
  • Mise en œuvre avec SVN et GIT (ou Mercurial au choix)

Intégration de Maven dans les IDE

  • Pourquoi intégrer Maven dans les IDE?
  • Les différents modes d'intégration
  • Panorama de l'ensemble des plugins et de leurs fonctionnalités pour les principaux IDE (Eclipse, IntelliJ et NetBeans)
  • Mise en pratique du plugin Eclipse m2eclipse pour une utilisation quotidienne

L'exécution des tests

  • Panorama des options pour l'exécution des tests
  • Mise en œuvre du debug de code source dans Eclipse pour des tests lancés par Maven

Intégration de Maven au sein d'une usine logicielle

  • Concepts et des enjeux de l'intégration continue
  • Le serveur d'intégration continue Jenkins et son écosystème de plugins Mise en oeuvre de projets Maven dans Jenkins avec SVN puis avec GIT (ou Mercurial au choix)

Qualité de code et traitement des résultats

  • Apports de la mise en place d'outils de métriques
  • Les principaux outils Java: de la génération de la documentation à la couverture de code en passant par la détection de bugs
  • Le site Maven
  • Le reporting dans le serveur Jenkins à travers ses plugins
  • Mise en oeuvre de Sonar au sein d'une usine logicielle
  • Les bonnes pratiques d’utilisation

Ref : MAV Plan format pdf
pendule-rouge Durée : 2 jours
calculette Prix : 1000 € HT
silhouette-rouge Public : Architecte, Développeur, Chef de projet
clef-rouge

Pré-requis : Connaissance de Java nécessaire ou avoir suivi la formation "Java SE - Les fondations".

ordinateur-TP De nombreux exercices permettront à terme d’acquérir les commpétences suivantes :
• Comprendre le rôle central de Maven et maitriser sa configuration
• Mettre en place Maven sur des projets de toutes tailles, naissants ou déjà existants
• Mettre en place le multi-projet pour s'intégrer aux projets Web
•Générer et personnaliser les rapports du projet

telephone

Contactez-nous :

06 60 81 02 03

enveloppe formation@asoft.fr

 

 

 

 

 

 

 

 






---------------------------------------------------------------------------------------------------------------------------------------

AcOS (Académie Open Source) - Formation aux technologies Open Source - Lyon - Paris
Tous Droits réservés à ALTERNANCE Soft   Webmaster - Mentions légales
                         --- Dernière mise à jour 07/01/2015 ---
---------------------------------------------------------------------------------------------------------------------------------------