CheerpJ 3.0: WebAssembly-JVM für nahtlose Java-Ausführung im Browser

Die WebAssembly-JVM bringt Java-Anwendungen in den Browser, laut Entwicklerteam ohne zusätzlichen Aufwand und ohne weitere Plug-ins.

In Pocket speichern vorlesen Druckansicht 17 Kommentare lesen

(Bild: JJFarq/Shutterstock.com)

Lesezeit: 2 Min.

CheerpJ 3.0 ist eine WebAssembly-JVM (Java Virtual Machine) für den Browser und bietet mit dem Update auf 3.0 einige nennenswerte neue Funktionsweisen im Vergleich zur vorherigen Version. Die Features umfassen eine vollständige Neuentwicklung, laut Blogbeitrag basierend auf sieben Jahren Erfahrung resultierend aus Projekten im Bereich WebAssembly. CheerpJ soll das nahtlose Ausführen unveränderter Java-Anwendungen im Browser ermöglichen und weiß mit den Anforderungen von Enterprise-Anwendungen umzugehen.

Zu den Hauptfunktionen von CheerpJ 3.0 gehört das Ausführen von Java-Anwendungen ohne Plug-ins, serverseitige Komponenten oder Änderungen am Quellcode. Es unterstützt unveränderte JAR-Dateien, große Anwendungen und grafische Schnittstellen, Reflection, Classloaders und die Integration von JavaScript. Die Anwendung zeichnet sich laut dem Blogbeitrag besonders durch ihre Leistungsfähigkeit und Flexibilität aus, da sie auf sicheren und standardisierten Webtechnologien basiert.

Um die Leistungsfähigkeit zu demonstrieren, stellt das Entwicklerteam hinter CheerpJ eine vollständig browserbasierte Minecraft-Demo namens Browsercraft zur Verfügung. Diese Demo soll veranschaulichen, dass CheerpJ in der Lage ist, weltweit bekannte Java-Anwendungen nahtlos als Webanwendungen auszuführen.

Empfohlener redaktioneller Inhalt

Mit Ihrer Zustimmmung wird hier ein externes Video (Kaltura Inc.) geladen.

Ich bin damit einverstanden, dass mir externe Inhalte angezeigt werden. Damit können personenbezogene Daten an Drittplattformen (Kaltura Inc.) übermittelt werden. Mehr dazu in unserer Datenschutzerklärung.

Wichtig ist zu beachten, dass CheerpJ 3.0 derzeit lediglich mit Java 8 zusammenarbeitet. Laut Blogbeitrag gibt es Pläne, zukünftige neuere Long-term-Support-Versionen (LTS) zu integrieren. Die Nutzung von CheerpJ ist kommerziell unterstützt, jedoch kostenlos für persönliche Projekte.

Die Funktionsweise von CheerpJ 3.0 basiert auf einer WebAssembly-JVM, die Java-Bytecode Just-in-Time (JIT) in JavaScript kompiliert. Die Anwendung bietet eine vollständige OpenJDK-Build sowie eine virtualisierte Systemebene mit Unterstützung für Dateisysteme und Netzwerkoperationen. Im Vergleich zu früheren Versionen wurde die AOT-Kompilierung (Ahead-of-Time) entfernt, was sich offenbar positiv auf die Leistung auswirkt, insbesondere auf die Reduzierung der Startzeit.

Diese Grafik zeigt, wie CheerpJ 3.0 arbeitet.

(Bild: Leaning Technologies Developer)

Das Entwicklerteam ermutigt Interessierte, die umfassende Dokumentation zu nutzen und sich am Browsercraft-Projekt zu beteiligen, um die Unterstützung für die Lightweight Java Game Library (LWJGL) weiter zu verbessern und möglicherweise auch an der Unterstützung neuerer Minecraft-Versionen zu arbeiten. Die Integration von CheerpJ in eigene Projekte erfordert das Hinzufügen eines Loaders und die Initialisierung der virtuellen Maschine.

Weitere Informationen bietet der Blogbeitrag bei Leaning Technologies Developer sowie der Migration Guide.

(mdo)