Java Release Cadence in 2026 - JDK 26 and the LTS Timeline
Why the release cadence matters
Before 2018, a new Java version arrived when its headline feature was ready, which meant waits of three years or more. Since JDK 10 the platform has used a strict time-based train: a feature release every six months, in March and September, whether or not any single feature is finished. Anything not ready simply rides the next train.
For teams, this changes the question from “what is in the next release” to “which release do we standardise on, and for how long”.
The six-month train
Each release follows the same schedule:
| Phase | Timing |
|---|---|
| Main development | Continuous in the JDK mainline |
| Rampdown phase one | Fork from mainline, only P1-P3 bug fixes |
| Rampdown phase two | Critical fixes only |
| Initial release candidate | Roughly one month before GA |
| General availability | Third Tuesday of March or September |
Features arrive through JDK Enhancement Proposals (JEPs). A JEP that misses its rampdown deadline is deferred rather than delaying the release, which is why the dates have not slipped in years.
Which versions are LTS
Oracle designates a Long-Term Support release every two years. The LTS versions to date:
| Version | Released | Status |
|---|---|---|
| JDK 8 | March 2014 | Legacy LTS, still widely deployed |
| JDK 11 | September 2018 | LTS, past its mainstream window |
| JDK 17 | September 2021 | LTS, still common in production |
| JDK 21 | September 2023 | LTS, the most common modern baseline |
| JDK 25 | September 2025 | Current LTS |
| JDK 29 | September 2027 (scheduled) | Next LTS |
Non-LTS releases such as JDK 26 and JDK 27 receive updates only until the following feature release, so roughly six months. They are intended for early adoption and testing, not for long-lived production baselines.
What is coming in JDK 26 and JDK 27
JDK 26 is scheduled for March 2026 and JDK 27 for September 2026. The work in flight comes from the long-running OpenJDK projects rather than from one-off features:
- Project Amber continues to simplify everyday syntax, with pattern matching extended to primitive types and simplified source files aimed at newcomers.
- Project Loom builds on virtual threads, with structured concurrency and scoped values maturing through successive preview rounds.
- Project Panama refines the Foreign Function & Memory API and the Vector API.
- Project Leyden targets startup time and warmup through ahead-of-time class loading and method profiling.
- Project Valhalla remains the longest-running effort, working towards value objects and a flatter memory layout.
Because these features land incrementally as previews, a feature that first appears in JDK 26 may only
become final in a later release. Preview features require --enable-preview and are explicitly not
covered by compatibility guarantees.
Planning an upgrade
A practical approach for most teams:
- Move off JDK 8 and JDK 11 first. These are the versions where the gap in performance, garbage collection and security posture is widest.
- Treat JDK 21 as the safe floor. It is well supported by frameworks, build tools and container images, and virtual threads are available.
- Evaluate JDK 25 as the new baseline. As the current LTS it will receive updates for years, and moving from 21 to 25 is a far smaller step than 8 to 21.
- Test against the non-LTS releases in CI. Running your test suite on JDK 26 as soon as it ships turns the eventual LTS migration into a routine change instead of a project.
The --release flag lets you compile against an older API level while building with a newer JDK, which
is useful when your runtime baseline moves more slowly than your toolchain.
Support windows in practice
Support length depends on who you buy it from. Oracle provides several years of premier support for its LTS releases, with extended support afterwards. The OpenJDK community and vendors such as Eclipse Adoptium, Amazon Corretto, Azul and Red Hat maintain their own builds with their own published end dates, and those dates do not always match Oracle’s.
If your compliance process depends on a specific end-of-life date, check the date published by the vendor whose build you actually ship, not the generic Java roadmap.
Conclusion
Java’s release train has made the platform predictable: a feature release in March and September, an LTS every two years, and previews that let you try features before committing. With JDK 25 as the current LTS and JDK 29 scheduled for 2027, the sensible pattern is to standardise on an LTS, keep continuous integration running against the interim releases, and treat each upgrade as routine maintenance rather than a migration project.