Java-Code-Hotswapping mit DCEVM
Hotswapping von Java-Code ist eine Technik die Programmierern viel Wartezeit ersparen kann, wenn Sie mit Webanwendungen arbeiten deren Start lange dauert. Durch das erneute Kompilieren und Laden der geänderten Klassen können Sie die Auswirkungen von Codeänderungen sehen, während die Anwendung weiterhin ausgeführt wird.
Die Java Virtual Machine unterstützt Hotswapping von Haus aus, aber auf sehr rudimentäre Weise. Die Funktionen der Standard-JVM sind darauf beschränkt, den Code für einen Methodeninhalt im laufenden Betrieb auszutauschen. Wenn Sie Methoden hinzufügen, entfernen oder umbenennen, ihre Parameter ändern oder andere Änderungen am Code vornehmen, müssen Sie neu starten.
Das bekannteste Tool zum sofortigen Nachladen von Codeänderungen ist wahrscheinlich JRebel. Es funktioniert großartig, und es besteht kein Zweifel, dass dies eine sehr nützliche Waffe im Arsenal der Java-Entwickler ist. Aber es ist nicht kostenlos. Wenn Sie einige kleinere Einschränkungen in Kauf nehmen können, ist DCEVM eine sehr gute Alternative.
Hier erkläre ich wie einfach es ist, DCEVM auf Ubuntu zu installieren und in Eclipse zu verwenden. Installation über apt:
sudo apt install openjdk-11-jre-dcevm
Fügen sie
-dcevm
zu den VM-Argumenten (Server -> Startkonfiguration öffnen -> (Tab) Argumente -> VM-Argumente) hinzu und Sie können loslegen.
Suchen Sie einen freiberuflichen Magnolia-CMS-Entwickler? Kontaktieren Sie mich gerne.