Bonjour à tous,
J'utilise pour un projet multimodules les éléments suivants :
Mon projet se décompose en plusieurs modules :
- Eclipse J2EE 3.5
- Maven 2.2
- Plug in maven Sonatype 0.9.9
- Plug in WTP (inclus dans Eclipse J2EE)
- JBoss Tools
- JBoss Server 4.2
J'essaye vainement de trouver la bonne méthode, la bonne pratique pour avoir un environnement de développement cohérent, pratique et exploitant un maximum des possibilités offertes.
- Projet parent :
- Module Objets Communs (mes beans)
- Module Service
- Module WebApp (sous Struts)
- divers autres modules utilitaires...
D'où ma première question : est-ce possible ? Est-ce que quelqu'un d'autre a déjà développé dans une structure proche de la mienne ?
Je suis actuellement confronté à un problème.
- J'arrive à faire tourner l'ensemble Eclipse, WTP, JBoss sans problème (hors Maven).
- J'arrive à faire tourner l'ensemble Eclipse, Maven et déployer à la main mon livrable sous JBoss (donc hors WTP)
- Quand j'essaye de coupler toutes ces technologies, il y a un HIC.
En ce moment, par exemple, le répertoire WEB-INF/lib n'est pas créé dans le répertoire de déploiement de JBoss (.metadata\.plugins\org.jboss.ide.eclipse.as.core\JBoss_4.2_Runtime_Server\deploy).
Du coup, lorsque JBoss démarre, il n'apprécie pas beaucoup de n'avoir aucune des libs nécessaires !!!
Or, lorsque je construis mon projet avec Maven (Run As -> Maven install), je retrouve bien dans mon répertoire target, toutes les libs dans WEB-INF/lib.
Je comprends (enfin, j'espère avoir compris), que le plugin WTP n'utilise pas du tout le répertoire de sortie de Maven (target). Il semble déployer sur le serveur JBoss directement le projet en utilisant théoriquement les dépendances que l'on peut trouver dans "Java Resources -> Libraries -> Web App Libraries".
Or, lorsqu'on utilise Maven, on ne trouve rien dans Web App Libraries. Toutes les dépendances sont gérées dans la librairie "Maven Dependencies", qui elle, contient bien tous mes jars utiles au projet.
Lorsqu'on regarde de plus près le Build Path du projet, on voit bien que pour les librairies de Maven Dependencies, une ligne "Publish/export dependency: /WEB-INF/lib".
Je m'attends donc, à ce qu'au lancement de JBoss, les dependances Maven soient fournies au serveur JBoss ou mieux, qu'elles soient recopiées dans le répertoire de déploiement de JBoss pour ma Webapp.
Avez-vous rencontré le même type de problème ?
Si oui, comment le résoudre ou le contourner ?
Dois-je faire le choix entre Maven ou WTP mais pas les deux ?
Merci par avance de vos conseils...
David.
Partager