JRuby 10 Boosts Performance with Faster Startup and Java 21 Support
The JRuby team has officially released JRuby 10, marking a major milestone for the Ruby implementation on the Java Virtual Machine (JVM). Announced on April 14 and available for download at jruby.org, the new release introduces faster startup times, full support for Java 21, and compatibility with the latest Ruby 3.4 features—positioning JRuby 10 as the most significant update in the project’s history.
One of the most notable changes in JRuby 10 is its focus on startup performance, long considered a weakness in the platform. By tapping into recent innovations in the Java ecosystem, JRuby 10 dramatically reduces startup delays. Among the enhancements are integration with Application Class Data Sharing (AppCDS), which caches metadata to speed up future runs; experimental support for Project CRaC, which allows fast process restoration; and groundwork for future support of Project Leyden, an OpenJDK initiative aimed at improving JVM startup and performance characteristics.
JRuby 10 also brings JRuby into alignment with modern Java by embracing Java 21, the latest long-term support (LTS) release. This shift moves JRuby development beyond the now-dated Java 8 baseline and opens the door to a decade of JVM innovations. According to core team member Charles Oliver Nutter, these improvements are not only technical upgrades but also part of a broader strategy to bring high-performance Ruby development into more enterprise-grade, JVM-centric environments.
On the Ruby side, JRuby 10 delivers full compatibility with Ruby 3.4 while incorporating features introduced in Ruby 3.2 and 3.3. It also makes full use of invokedynamic
optimizations by default—offering maximum runtime efficiency without requiring additional flags. Previous JRuby versions employed a more conservative default optimization level. With internal cleanups, updated APIs, and a range of enhancements both under the hood and on the surface, JRuby 10 sets a new standard for performance and modern compatibility in the Ruby-on-JVM world.