m2eclipse : Déclarez vos projets Maven dans Eclipse

m2eclipse

m2eclipse édité par Sonatype permet le support de Maven dans l’IDE eclipse.

Ce plugin apporte des fonctionnalités notamment au niveau de l'édition des fichiers pom.xml, de la gestion et de l'actualisation des dépendances du projet dans Eclipse et de la gestion du filtrage des fichiers de ressources.

L’objectif de ce post est de vous présenter comment installer le plugin m2eclipse et comment configurer des projets existants ou créer de nouveaux projets.

Pré-requis

Pour que le plugin m2eclipse fonctionne, il est nécessaire d'avoir installé et configuré Maven en local.

Le fichier settings.xml doit exister dans le répertoire .m2 local.

Les variables d'environnement doivent être ajoutées :

 MAVEN_HOME : répertoire d'installation de maven
 M2_HOME : répertoire .m2 contenant le repository local de maven.

Installation du plugin

Nous installons m2eclipse via le marketplace d'Eclipse.

Pour cela, dans Eclipse, aller dans le menu Help > Eclipse marketplace.
Dans la nouvelle fenêtre Eclipse MarketPlace, saisir le mot maven dans Find et lancer la recherche.
Le plugin Maven Integration for Eclipse de Eclipse.org apparaît.

Installation de m2eclipse depuis le marketplace

Cliquer sur le bouton Install et sélectionner les plugins suivants :
Maven Integration for Eclipse > m2e et m2e - slf4j

Choix des plugins à installer

Cliquer sur le bouton Previous pour revenir sur l'écran de recherche du marketplace.

Rechercher cette fois-ci m2eclipse wtp.

Le plugin Maven Integration for Eclipse for WTP apparaît:

m2eclipse - WTP

Cliquer sur le bouton Install et sélectionner le module Maven Integration for Eclipse for WTP > Maven Integration for WTP.

m2eclipse - WTP

Confirmer l'installation et, à la fin de l'installation de m2eclipse, accepter le redémarrage d'eclipse.

Bravo ! m2eclipse est installé dans votre Eclipse 🙂

Voyons comment configurer nos projets avec le plugin m2eclipse.

Configuration des projets avec m2eclipse

m2eclipse nous offre plusieurs possibilités : nous pouvons créer un nouveau projet Maven à partir de zéro, soit à partir d'un archétype Maven existant. Il est également possible d'importer un projet déjà existant dans notre workspace ou de le récupérer directement depuis le référentiel de sources en utilisant le composant SCM de Maven.

Cependant un projet doit obligatoirement disposer d'un fichier pom.xml pour être associé à m2eclipse.

Déclarer un projet existant en tant que projet Maven

Pour lier un projet existant au plugin m2eclipse, dans la vue Package Explorer cliquer sur le projet avec le bouton droit de la souris, puis sur Configure et Convert to Maven project.

m2eclipse - Déclarer un projet existant en tant que projet Maven

Cependant, si le projet contient plusieurs modules Maven, aucun projet n'est pour le moment créé par le plugin m2eclipse. Il faut alors importer les projets comme indiqué dans le paragraphe suivant Importer des projets existants en tant que projets Maven.

Importer des projets existants en tant que projets Maven

L'importation de projets Maven permet d'importer tous les modules d'un projet Maven en tant que projet dans Eclipse.

Pour cela, dans Eclipse, aller dans le menu File puis Import.

La fenêtre de sélection du type d'importation apparaît. Sélectionner Maven > Existing Maven Projects.

m2eclipse - Importer des projets Maven

La fenêtre d'importation propose alors d'indiquer le répertoire de base à partir duquel le plugin m2eclipse recherche les projets Maven à importer.

Par exemple, dans le cas d'un projet multi-modules, nous recherchons depuis la racine du projet les modules à importer dans Eclipse :

m2eclipse - Importer des projets Maven

Après avoir cliqué sur le bouton Next, nous arrivons à la liste des utilitaires nécessaires au plugin m2eclipse à installer pour pouvoir exploiter les plugins de Maven. Par exemple, il aura besoin d'un connecteur pour utiliser le plugin maven-compiler-plugin pour effectuer la compilation du projet.

m2eclipse - Importer des projets Maven

Après confirmation de l'importation, les projets détectés sont visibles dans le workspace d'Eclipse en tant que projets Maven.

Si le projet contient plusieurs modules Maven, un écran de sélection de ces modules apparaît pour sélectionner les projets à déclarer dans le workspace.

Récupérer le projet depuis le référentiel de sources SVN

Nous souhaitons récupérer notre projet directement depuis le référentiel de sources, par exemple SVN, et le référencer dans m2eclipse.

Pour cela, Saisir le raccourcir CTRL + N dans eclipse pour afficher la fenêtre New.
De nouvelles entrées apparaissent :

m2eclipse - Importer un projet depuis le référentiel de sources

Sélectionner Maven > Checkout as Maven project from SCM.

La fenêtre Checkout as Maven project from SCM apparaît.

Récupérer le projet Maven depuis SCM

Sélection du référentiel de source

La liste déroulante à droite de SCM URL détermine le type de référentiel, par exemple SVN ou GIT.

Dans le cas où il n'est pas présent, il est nécessaire de l'installer via le lien Find more SCM connectors in the m2e MarketPlace.
La fenêtre m2e MarketPlace / Install m2e connectors apparaît et permet de rechercher le protocole souhaité.
Dans la liste de résultats, aller dans la section tout en bas m2e Team Providers et sélectionner le protocole souhaité.

Installer le connecteur au référentiel de sources

Sélectionnons par exemple le connecteur m2e-subversive pour nous connecter au référentiel de sources SVN.
m2eclipse nous proposera alors d'installer Maven SCM Handler for Subversive.
Confirmer ce choix et accepter de redémarrer eclipse à la fin de l'installation.

Une fois Eclipse redémarré, utiliser le raccourci clavier CTRL + N pour afficher la fenêtre de création, puis rechercher Maven puis Checkout Maven Projects depuis SCM pour recommencer la récupération du projet depuis le référentiel de sources.

Cette fois-ci le référentiel SVN apparaît dans la liste déroulante du champ SCM.

Définir l'URL du projet dans le référentiel de sources

Le sélectionner et saisir l'URL complet du projet sur le référentiel SVN.

m2eclipse - Indiquer l'URL SVN

Ensuite, confirmer l'importation du projet depuis le référentiel.

Le plugin m2eclipse va importer le projet dans Eclipse en tant que projet Maven.

Il va également définir des projets dans Eclipse pour chacun des modules Maven.

Création d'un nouveau projet Maven

m2eclipse permet la création d'un nouveau projet Maven soit vide, soit à partir d'un archétype.

Création d'un nouveau projet vide

Dans Eclipse, utiliser le raccourci CTRL + N pour ouvrir la fenêtre de création.

Sélectionner Maven puis Maven Project.

m2eclipse - Création d'un nouveau projet vide

La fenêtre New Maven Project apparaît, cocher Create a simple project (skip archetype selection) puis cliquer sur Next.

m2eclipse - Création d'un nouveau projet vide

La fenêtre de configuration du projet apparaît :

m2eclipse - Création d'un nouveau projet vide

Dans la zone Artifact, nous avons à définir les informations Maven de notre projet : Group Id, Artifact Id, Numéro de version, le type de packaging.

Attention : le packaging est important car il va déterminer le type et le contenu de notre nouveau projet.

Pour le packaging pom, le nouveau projet sera de type Projet simple. Il ne contiendra qu'un fichier pom.xml. Ce projet pourra être utilisé comme projet Maven parent et y définir des modules Maven.

Pour le packaging jar, le nouveau projet sera de type Projet Java. Il contiendra un fichier pom.xml et les répertoires de sources et de tests.

Pour le packaging war, le nouveau projet sera de type Projet Web et pourra être déployé avec le WTP de Eclipse. Il contiendra un fichier pom.xml, les répertoires de sources et tests ainsi qu'un répertoire src/main/webapp. Cependant le fichier web.xml sera à créer manuellement.

Nous pouvons également indiquer le projet parent. Le bouton Browse permet d'accéder à la fenêtre de recherche du projet parent. Cette recherche se base sur le paramétrage de l'actefactory dans les fichiers settings.xml de notre configuration Maven et référencés par le plugin m2eclipse.

Valider la création du projet : le projet apparaît dans le workspace d'Eclipse.

Création d'un nouveau projet depuis un archetype

Il est également possible de créer notre projet depuis un modèle de projet existant, aussi appelé archetype dans Maven.

Il existe plusieurs archetypes publics, comme appfuse. Ceci permet de partir d'un projet modèle pour tester de nouvelles technologies.

Pour créer notre projet depuis un archetype, dans Eclipse, utiliser le raccourci CTRL + N pour ouvrir la fenêtre de création. Sélectionner Maven puis Maven Projects.

m2eclipse - Création d'un projet depuis un archetype

La fenêtre New Maven Project apparaît.
Ne pas cocher Create a simple project (skip archetype selection) puis cliquer sur Next.

m2eclipse - Création d'un projet depuis un archetype

La fenêtre suivante permet de rechercher le projet Archetype qui va servir de modèle pour notre nouveau projet.

Nous pouvons rechercher par exemple appfuse qui propose des projets pour JSF, Spring MVC, Struts 2.

Sélectionner le projet modèle et cliquer sur Next.

m2eclipse - Création d'un projet depuis un archetype

Enfin la création de notre projet se termine par les propriétés Maven où nous définissons le Group Id, Artifact Id, la version et le package de base des classes Java de notre nouveau projet.

m2eclipse - Création d'un projet depuis un archetype

Après confirmation, notre nouveau projet apparaît dans le workspace en se basant sur le projet archetype comme modèle.

Conclusion

Maintenant que le plugin m2eclipse est installé et que votre projet est déclaré en tant que projet Maven, vous pouvez utiliser les fonctionnalités offertes par ce plugin, comme l'édition des fichiers pom.xml, la gestion des dépendances et la configuration automatique des projets dans Eclipse et avec le WTP.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Captcha *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.