Richard Groß

IT Archaeologist

Home

Java Version History (Ongoing)

Ever since Java switched to its six-month release cadence (Time-Based Release Versioning) it has become a bit harder to keep up with the features they have implemented. The following list tracks the stable (not incubating or in preview) feature changes I deemed most noteworthy. The releases that Oracle will provide Long-Term Support (LTS) for are marked as such, based on the plan that Oracle publishes. This list does not cover all api changes and only seldom things outside of JEPs. Check the Java Almanac to see api updates of the JDK. Use a current JDK to get all performance improvements that happen constantly.

The list is ongoing and will be updated with every new Java release. A + marks an added feature, a - marks a removed feature.

  • 25 (expected September 2025) LTS until September 2030

  • …​

  • 23 (expected September 2024)

    • Preliminary opinion, since JDK rampdown and feature set freeze won’t happen before June.

      • Could this be the release that finally delivers Primitive Classes Preview and Value Objects Preview? We are likely to get record withers, also called Derived Record creation (Preview) which makes working with records so much nicer. It might also finalize scoped values and structured concurrency, important pieces of the virtual thread puzzle. And we’ll probably get String templates finalized. Awesome stuff.







Note
The full Java version history can be found via Open JDK, at Wikipedia or via the Java releases page. Another website that tracks java features but also gives upgrading advice is whichjdk.com.