Explodierte Krieges-Bereitstellung mit IntelliJ Idea, Maven, Tomcat und JRebel
Ich bin der Entwicklung einer web-basierten Anwendung mit IntelliJ Idea 12, Maven, JRebel und Tomcat. Um die Vorteile von JRebel, automatisch nachladen änderungen Spring Bohnen, die ich verwendet, die explodierte Krieges-Bereitstellung zur Verfügung gestellt von Intellij unten
Durch ein Maven-Modul, IntelliJ genau verfolgt Maven-Konvention zum kompilieren von Java-Dateien in der Ausgabe-Ordner (target/classes) ANDERE explodierte webapp Verzeichnis (Ziel - /spring-mvc-showcase/webapp/web-inf/classes). Als Ergebnis, Tomcat und JRebel kann nicht laden änderungen, die diese neuen Klassen.
Ich im moment vorübergehend konfiguriert IntelliJ die Ausgabe-Ordner, wies auf den Ordner WEB-INF/classes, so dass änderungen kann wieder geladen werden. Wie ich nicht wollen, zu brechen Maven-Konventionen, könnte mir jemand sagen, um eine elegantere Lösung?
target (Maven generated artifact directory)
|
-- classes (compiled)
|
-- spring-mvc-showcase (exploded webapp directory)
|
-- WEB-INF
|
-- classes
InformationsquelleAutor Hung Tran | 2013-01-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nachdem Sie es konfiguriert haben richtig, wenn Sie starten von Tomcat, sollten Sie etwas wie dieses:
Dann, was ich Tue, jedes mal, wenn ich etwas ändern, anstelle der Ausführung von maven Paket, ich führen Sie "Projekt erstellen" (in der IDEE), /target/classes Ordner wird aktualisiert und die Konfiguration neu laden Ihre Klassen automatisch.
Ich ein bisschen hatte das gleiche Problem. Eigentlich ist es maven wer hält die explodierte Krieg bei der target - /spring-mvc-showcase, also, wenn Sie zu einem Punkt JRebel nach /target/spring-mvc-showcase/WEB-INF/classes, müssen Sie zum ausführen von maven jedes mal, wenn Sie eine Klasse. Stattdessen, wenn Sie es zu beobachten target/classes, erhalten Sie Weg mit einem "Projekt", welche schneller ist.
InformationsquelleAutor ag0rex
Haben Sie die IntelliJ IDEA JRebel plug-in installiert? Es fügt eine Aktion "Generieren rebel.xml". Dies erzeugt eine rebel.xml Datei, die soll in den WEB-INF/classes in der Bereitstellung und Zuordnung der Klassen zu dem Ort, wo die IDEE kompiliert Sie.
InformationsquelleAutor Erkki Lindpere
Hier ist ein einfacher Weg, um schnell zu starten (hot Deployment mit der IDEE, Jrebel und maven-tomcat.
IDEE hot-deploy-web-Anwendung mit JRebel und tomcat7-maven-plugin
InformationsquelleAutor Kevin