Maven, m2e, Eclipse WTP

J’ai récemment été confronté à une problèmatique d’intégration entre différents outils de développement java : maven, m2e (plugin maven pour eclipse) et WTP (Web Tools Platform).

Mon projet qui avait été créé à l’origine avec la commande mvn eclipse:eclipse me posait des problèmes lorsque j’ajoutais des librairies dans les dépendances  maven (POM). L’un des symptomes était l’affichage de messages d’erreur lorsque j’essayais de déployer le projet sur un serveur tomcat démarré localement (dans eclipse): le serveur ne reconnaissait pas les classes appartenant à ces nouvelles librairies.

Ces problèmes étaient principalement lies à une incomptatibilité entre la commande maven utilisée pour créer le projet et l’utilisation du plugin m2e. Pour contourner ce problème, j’ai du supprimer le projet (sans supprimer le contenu physique), supprimer les fichiers .classpath/.project(et ./settings), et importer le projet en tant que projet maven.

A ce stade le projet est recréé parfaitement mais ne peut pas être déployé sur un serveur local. Pour cela, il faut lui définir une facet « Dynamic web module » au travert des propriétés du projet. Cette manipulation crée de nouveaux repertoires dont le « Web-content » qui doit contenir par défaut l’ensemble des elements déployables. Or cette arborescence ne correspondait pas à la structure de mon projet.

Pour solutionner cette dernière difficulté, je me suis inspiré de l’article http://www.mkyong.com/maven/how-do-use-maven-to-create-a-dynamic-web-project-in-eclipse/ . J’ai notamment modifié le contenu du fichier org.eclipse.wst.common.component (du repertoire .settings) pour faire pointer les différents elements vers l’arborescence de mon projet.

Il y a surement d’autres moyens de réaliser ce type d’action ou même de les éviter.
Mais je n’ai trouvé que ces contournements pour solutionner mon problème.

L’idéal étant probablement de créer un projet web dynamic et de lui ajouter une nature maven et non l’inverse.

http://www.jperf.com

 

Publicités

A propos jlerbsc

founder of JavaPerf Consulting Http://www.jperf.com
Cet article a été publié dans tech notes. Ajoutez ce permalien à vos favoris.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s