2009-09-30 7 views
4

Donc, notre nouveau projet webapp est basé sur maven. J'apprécie vraiment la gestion des dépendances et l'approche agnostique d'IDE mais j'ai des problèmes avec la compilation et le débogage.Impossible de compiler sur save/hot deploy pour fonctionner avec webapp basé sur maven dans eclipse ou netbeans

Voilà comment je en obtenir une copie propre du projet de travail

  1. Vérifiez le projet principal de SVN
  2. Ouvrez le projet dans IDE (je l'ai essayé dans Eclipse 3.4 et NetBeans 6.7)
  3. L'EDI ouvrira automatiquement deux sous-projets, l'un étant la webapp, l'autre étant un jar d'utilitaires de support.
  4. partir de la ligne de commande je cours la guerre mvn: inplace sur le module webapp qui construit une copie de travail de la webapp avec toutes les dépendances dans WEB-INF/lib/

Cela va alors tout va bien, mais chaque fois que je change un java class Je dois nettoyer et construire/recharger le contexte de l'application. Je ai googlé haut et bas mais personne ne semble se plaindre à ce sujet, donc je suppose qu'il doit y avoir quelque chose de vraiment évident que je suis manquant. Comment tout le monde gère-t-il la compilation incrémentale et le déploiement à chaud avec maven? Pour clarifier tout ce que je cherche est la réplique du comportement que j'avais l'habitude d'avoir avant maven où je pourrais faire de simples modifications aux classes Java et elles seraient instantanément compilées et déployées à chaud sur une application web en cours d'exécution. Je n'ai pas besoin de quelque chose d'aussi sophistiqué que jRebel etc. Je veux juste que le nouvel outil me donne la même fonctionnalité que j'ai appréciée avec mes vieux outils.

+0

Voulez-vous dire que vous changez STH. Dans la classe utilitaire et que vous voulez voir ces changements sans la webapp propre + reconstruire? Parce que le changement STH. Sera hotdeploy la change simplement via 'run' dans NetBeans. – Karussell

Répondre

1

Si vous pouvez utiliser mvn jetty:run il lira les classes et les ressources directement à partir du projet. L'utilisation du plugin Maven2 Eclipse et l'exécution du serveur intégré dans Eclipse ont une publication automatique, ce qui vous permet d'y parvenir à la fin, même si c'est plus lent. Et JRebel commençant par 2.0 (comme vous le savez peut-être) peut mapper le module Maven directement à l'application déployée, ainsi vous obtenez la construction et le redéploiement instantanés. Ce sont les seules solutions que je connaisse.

0

Le déploiement sur place fonctionne avec Netbeans 7.0.1 et Tomcat 6.0.x si j'utilise le déploiement sur place de Tomcat 7.0.x ne fonctionne pas. Tomcat toujours des copies application à $ CATALINA_HOME/temp :(

Questions connexes