Redeployment and Live Reload
Effiziente Entwicklungsabläufe basieren auf Tools, die Codeänderungen erkennen und die App automatisch in Echtzeit aktualisieren. Continuous Deployment und Dynamic Reload arbeiten zusammen, um den Entwicklungsprozess zu vereinfachen, indem manuelle Schritte reduziert werden, sodass Sie Ihre Änderungen schnell sehen können, ohne den Server manuell neu starten zu müssen.
Neuverteilung
Neuverteilung in der Java-Entwicklung bezieht sich auf das automatische Erkennen und Bereitstellen von Codeänderungen, sodass Aktualisierungen ohne einen manuellen Serverneustart in der App angezeigt werden. Dieser Prozess umfasst typischerweise die Aktualisierung von Java-Klassen und Web-Ressourcen im laufenden Betrieb.
In einer webforJ-App bedeutet dies, dass die WAR-Datei bei jeder Änderung des Codes neu generiert wird.
Änderungen an Java-Klassen und Ressourcen im Klassenpfad werden normalerweise von der IDE überwacht. Wenn eine Java-Klasse geändert und die Datei gespeichert wird, entweder automatisch durch die IDE oder manuell durch den Entwickler, treten diese Tools in Kraft, um die aktualisierten Klassendateien im Zielverzeichnis zu kompilieren und anzuwenden.
Tools und Einstellungen, die das Browsen von Reloads automatisieren oder optimieren, können für eine nahtlosere Erfahrung hinzugefügt werden.
Live-Reload
Live-Reload stellt sicher, dass einmal bereitgestellte Änderungen im Browser in Echtzeit angezeigt werden, ohne dass eine manuelle Aktualisierung des Browsers erforderlich ist.
In einer webforJ-App kann das Live-Reload automatisch die Ansicht aktualisieren, Komponenten neu rendern, um den neuesten Zustand der App anzuzeigen, oder sogar Änderungen nach Bedarf patchen.
Themen
📄️ JRebel
JRebel ist ein Java-Entwicklungstool, das mit der JVM integriert ist, um Änderungen im Code zu erkennen und modifizierte Klassen direkt im Speicher zu ersetzen, sodass Entwickler Änderungen sofort sehen können, ohne den Server neu zu starten.
📄️ Maven Jetty plugin
Der Maven Jetty-Plugin ist ein beliebtes Werkzeug, das es Entwicklern ermöglicht, Java-Webanwendungen innerhalb eines eingebetteten Jetty-Servers direkt aus ihren Maven-Projekten auszuführen.