CheerpJ’s WebAssembly JVM enables running large, unmodified Java applications directly in modern browsers without the need for plugins or a Java runtime
Leaning Technologies has unveiled CheerpJ 3.0, an advanced WebAssembly JVM that enables running large Java applications directly in modern web browsers. This release marks a significant upgrade from CheerpJ 2.3, which was introduced in 2022, and represents a major leap in both performance and compatibility for Java applications on the web.
CheerpJ 3.0 is designed to handle “very large” Java applications, such as IntelliJ IDEA and Minecraft, without the need for any Java plugins or installations. This capability is especially noteworthy as it addresses one of the major challenges of running complex Java applications in a browser environment. The new version builds on seven years of feedback and development, incorporating lessons from both enterprise and community usage.
The core of CheerpJ 3.0 is its ability to compile Java bytecode into JavaScript using a Just-In-Time (JIT) compiler. This process is crucial for ensuring that Java applications run efficiently in the browser. Additionally, CheerpJ 3.0 includes a complete and unmodified build of OpenJDK, which ensures that the Java runtime environment is fully preserved during the translation process.
One of the standout features of CheerpJ 3.0 is its support for running large, unmodified Java applications directly in the browser, bypassing the need for Java plugins or separate installations. This is achieved without requiring a server-side component, making deployment and execution straightforward. The system supports unmodified JAR (Java Archive) files, eliminating the need for additional compilation or preprocessing steps.
CheerpJ 3.0 also provides comprehensive support for Java features such as reflection and class loaders. This ensures that applications relying on these advanced Java features can run correctly in the browser environment. The plugin also facilitates interoperability with JavaScript, allowing for seamless integration between Java applications and web technologies.
Overall, CheerpJ 3.0 represents a significant advancement in making Java applications more accessible and functional within the web ecosystem. By leveraging WebAssembly, CheerpJ 3.0 provides a robust solution for running large-scale Java applications in modern browsers, expanding the possibilities for Java developers and web application integration.