Choosing a version in 2026
Where each LTS stands now, and what to do if you are still on 8 or 11.
Open this lesson in the learning hubKey points
- Java 25 is the current LTS and the right default for a new service.
- 21 remains fully supported, so there is no emergency - plan the hop, do not rush it.
- 17 is still supported but is now two LTS releases behind; start planning.
- On 8 or 11, the jump to 17 is the hard one - modules and internal-API access are the real work.
- Never target a non-LTS release for a production service; there is no patch stream behind it.
Start new work on the newest LTS; the painful migration is always 8/11 to 17, not LTS to LTS.
This is a reading copy. The full lesson — with the visual explainer, the interactive lab and a Run button for the code — lives in the Java 25 Course course, and every lesson in it is listed on the Java 25 Course contents page.