endoflife.ai
EOL Checker Products EOL Watch Get Support

Java End-of-Life Dates by Vendor: Why "When Does Java 17 Die?" Has Eight Different Answers

By Scott Bissett  ·  Updated: August 18, 2026  ·  Reference — every Java LTS across eight distributions  ·  Dates from each vendor's published lifecycle policy, refreshed nightly; Oracle terms verified against the Oracle Java SE Support Roadmap (updated August 4, 2026) — methodology

There is no such thing as “the” Java end-of-life date. Java is one specification shipped by many vendors, and each vendor retires each version on its own calendar. Java 17 — still one of the most-deployed versions in production — is the perfect specimen: Oracle's free OpenJDK builds abandoned it in March 2022, Oracle JDK 17 Premier Support ends September 30, 2026, SapMachine 17 ends September 1, 2026, Eclipse Temurin carries it free to October 31, 2027, and Amazon Corretto to October 31, 2029. Same Java, seven-year spread — and which date applies to you depends on a single line of java -version output.

September 2026 is also a double date on the Oracle side: the same month Oracle JDK 17 leaves Premier Support, Oracle JDK 21's free-for-everyone (NFTC) updates end, one year after Java 25 shipped. This page is the reference for all of it: every LTS version (8, 11, 17, 21, 25) across eight distributions, the Oracle licensing layer that decides whether a date costs you money, how to identify the vendor you are actually running, and what to do when your date arrives. Per-version detail lives on the product pages: Oracle JDK, Eclipse Temurin, Amazon Corretto, Azul Zulu, Red Hat build of OpenJDK, Microsoft Build of OpenJDK, IBM Semeru, OpenJDK builds from Oracle.

The one-sentence version: find out whose JDK you run (java -version names the vendor), look up that vendor's date in the tables below — and if the answer is “Oracle JDK 17” or “Oracle JDK 21 without a subscription,” you have a decision to make before September 30, 2026.
Quick answer: Oracle JDK 26 is supported until September 18, 2026, its end-of-support date. It is also the next Oracle JDK version to reach end of life. 23 of 27 tracked Oracle JDK versions are past end of life; the most recent to reach it, 24, did so on September 16, 2025. Every Oracle JDK version's release and end-of-support date is on the Oracle JDK lifecycle page.

Key Dates at a Glance

Running Java past end of life?
Extended support past the official EOL date exists for many products in this position — whether it covers Java is exactly what we check. Tell us where to reach you and we’ll reply with matched options and pricing guidance — or an honest “no vendor covers this.” Free, no obligation.

Free · No obligation · Independent — we track the dates, vendors don’t pay for placement · dates verified against vendor sources. See all support options →

Java EOL Risk Scores — Same Bits, Different Numbers

An end-of-life date on its own does not tell you how urgent a version is. We publish an EOL Risk Score (0–100) for every tracked version, combining four factors: how long past — or how close to — end of life it is, the attack surface of the software class, whether CISA lists the product in its Known Exploited Vulnerabilities catalog, and whether commercial extended support exists. Because Java's lifecycle is per vendor, so is the score — and the comparison is instructive.

Distribution / versionEOL Risk ScoreWhat drives it
Oracle JDK 870Premier Support ended March 31, 2022 (recency factor high); Oracle Java SE is named in CISA's KEV catalog; Extended Support to December 2030 exists.
Oracle JDK 1170Premier Support ended September 30, 2023; same KEV exposure; Extended Support to January 2032.
Oracle JDK 1745Premier Support ends September 30, 2026; the recency factor climbs monthly toward that date.
Oracle JDK 2130Premier Support to September 30, 2028; the KEV-catalog baseline for an Oracle runtime.
Oracle JDK 2530Premier Support to September 30, 2030; same baseline.
Eclipse Temurin 1710Free support to October 31, 2027; not separately named in the KEV catalog.
Amazon Corretto 1710Free support to October 31, 2029.
Red Hat build of OpenJDK 825Support ends November 30, 2026; the recency factor is rising toward it.

Read carefully, the table says something useful: Java 17 from Oracle scores 45, Java 17 from Temurin scores 10, and the class files are the same. The score follows the lifecycle and the catalog naming of the distribution you run, not the bytecode — which is exactly why the vendor line in java -version is the fact that matters. Scores update automatically at every site build as dates pass and the KEV catalog changes; the methodology is on the EOL Risk Score page.

Java 17 LTS — Support End Dates by Vendor

Vendor / distributionStandard support endsExtended support endsStatus
Oracle JDK
Paid (Premier/Extended)
Sep 30, 2026Sep 30, 2029Active
Oracle OpenJDK builds
Free (6-month window)
Mar 22, 2022Ended
Eclipse Temurin
Free
Oct 31, 2027Active
Amazon Corretto
Free
Oct 31, 2029Active
Azul Zulu
Free base / paid extended
Sep 30, 2029Sep 30, 2031Active
Red Hat OpenJDK
With RHEL subscription
Dec 31, 2027Active
Microsoft OpenJDK
Free
Sep 30, 2027Active
IBM Semeru
Free
Oct 31, 2027Active

The September 30 decision, spelled out. Oracle JDK 17 leaves Premier Support and enters Extended Support on September 30, 2026 — and Oracle's roadmap waives the Extended Support fee for Java SE 17 from October 2026 through September 2029, so subscribers keep receiving updates at no additional charge for three more years. That makes the date far less dramatic than it sounds for paying customers. It changes nothing for non-paying users either, because the free (NFTC) update window for Oracle JDK 17 closed in September 2024: every Oracle JDK 17 update since October 15, 2024 has been under the OTN license, free only for personal and development use. If you run Oracle JDK 17 commercially without a Java SE Subscription, you have been out of free updates for two years already. The three exits: pay — a Java SE Universal Subscription; switch — a recompile-free swap to Temurin (free to October 2027), Corretto (free to October 2029) or Zulu (free to September 2029), since all ship the same OpenJDK core; or upgrade — Java 21 or 25 resets the clock. The full anatomy of the date is in Java 17's September 30 deadline is Oracle's, not Java's; the licensing side is in the Oracle Java licensing trap.

Java 8 — The Version That Will Not Die

Vendor / distributionStandard support endsExtended support endsStatus
Oracle JDK
Paid (Premier/Extended)
Mar 31, 2022Dec 31, 2030Active
Oracle OpenJDK buildsDoes not offer Java 8
Eclipse Temurin
Free
Dec 31, 2030Active
Amazon Corretto
Free
Dec 31, 2030Active
Azul Zulu
Free base / paid extended
Dec 31, 2030Dec 31, 2032Active
Red Hat OpenJDK
With RHEL subscription
Nov 30, 2026Active
Microsoft OpenJDKDoes not offer Java 8
IBM Semeru
Free
Dec 31, 2030Active

Java 8 turned twelve in March 2026 and will be commercially supported into the 2030s — Oracle Extended to December 31, 2030 (uplift fee waived), Azul's extended tier to December 2032, and Temurin, Corretto and IBM free to December 31, 2030. The date that matters soonest is Red Hat's: OpenJDK 8 support inside RHEL ends November 30, 2026. Every RHEL estate still compiling against Red Hat's Java 8 packages needs a vendor switch or an upgrade path before December; BellSoft's standard Liberica 8 support ends the same day.

Java 11 LTS — Support End Dates by Vendor

Vendor / distributionStandard support endsExtended support endsStatus
Oracle JDK
Paid (Premier/Extended)
Sep 30, 2023Jan 31, 2032Active
Oracle OpenJDK builds
Free (6-month window)
Mar 19, 2019Ended
Eclipse Temurin
Free
Oct 31, 2027Active
Amazon Corretto
Free
Jan 31, 2032Active
Azul Zulu
Free base / paid extended
Jan 31, 2032Jan 31, 2034Active
Red Hat OpenJDK
With RHEL subscription
Oct 31, 2024Ended
Microsoft OpenJDK
Free
Sep 30, 2027Active
IBM Semeru
Free
Oct 31, 2027Active

Note the trap pattern: Red Hat retired its Java 11 build on October 31, 2024 while Temurin and IBM run to October 2027 and Corretto/Zulu to January 2032 — so “Java 11 is EOL” and “Java 11 is supported for six more years” are both true statements, about different binaries. Oracle's Extended Support for JDK 11 runs to January 31, 2032 with the uplift fee waived.

Java 21 LTS — Support End Dates by Vendor

Vendor / distributionStandard support endsExtended support endsStatus
Oracle JDK
Paid (Premier/Extended)
Sep 30, 2028Sep 30, 2031Active
Oracle OpenJDK builds
Free (6-month window)
Mar 19, 2024Ended
Eclipse Temurin
Free
Dec 31, 2029Active
Amazon Corretto
Free
Oct 31, 2030Active
Azul Zulu
Free base / paid extended
Sep 30, 2031Sep 30, 2033Active
Red Hat OpenJDK
With RHEL subscription
Dec 31, 2029Active
Microsoft OpenJDK
Free
Sep 30, 2028Active
IBM Semeru
Free
Dec 31, 2029Active

Java 21 has a licensing date the table cannot show: Oracle JDK 21 has been free for all users — commercial included — under the No-Fee Terms and Conditions since September 2023, and Oracle's roadmap states that JDK 21 updates released after September 2026 move to the OTN license, free only for personal and development use. That is the “one year after the next LTS” rule doing what it did to JDK 17 in 2024. Commercial users of Oracle JDK 21 who want to keep updating for free must move to Oracle JDK 25 or switch to another vendor's Java 21 build; the support dates above for subscribers are unaffected.

Java 25 LTS — Support End Dates by Vendor

Vendor / distributionStandard support endsExtended support endsStatus
Oracle JDK
Paid (Premier/Extended)
Sep 30, 2030Sep 30, 2033Active
Oracle OpenJDK builds
Free (6-month window)
Mar 17, 2026Ended
Eclipse Temurin
Free
Sep 30, 2031Active
Amazon Corretto
Free
Oct 31, 2032Active
Azul Zulu
Free base / paid extended
Sep 30, 2033Sep 30, 2035Active
Red Hat OpenJDK
With RHEL subscription
Dec 31, 2030Active
Microsoft OpenJDK
Free
Sep 30, 2030Active
IBM Semeru
Free
Sep 30, 2030Active

Even the newest LTS illustrates the rule: Oracle's OpenJDK 25 builds ended in March 2026 — six months after release, by design — while the same bits ship free from Temurin to September 2031 and Corretto to October 2032. Oracle JDK 25 itself is free for all users under NFTC, and on Oracle's stated pattern will stay that way until about a year after the next LTS, Java 29, ships in September 2027.

The Oracle Licensing Layer: NFTC, OTN and Subscription

Oracle's dates only cost money if you are on Oracle's binaries, and even then it depends which license the binary came under. Three regimes matter:

LicenseApplies toWhat it means
NFTC (No-Fee Terms and Conditions)Oracle JDK 21 (until September 2026) and Oracle JDK 25Free for all users including commercial production, but only until one year after the next LTS ships. Then updates move to OTN.
OTN (Oracle Technology Network license)Oracle JDK 8, 11, 17 today; JDK 21 updates from October 2026Free for personal, development and a few other named uses only. Commercial production use requires a subscription.
Java SE Universal SubscriptionAny Oracle JDKPriced per employee since January 2023. Buys Premier and Extended Support and the right to run OTN-licensed builds commercially. Extended Support fees are currently waived for JDK 8, 11 and 17 for the periods in the tables above.

The practical reading: if java -version says Java(TM) SE Runtime Environment and you have no subscription, you are either on an NFTC build (21 until September 2026, or 25) or you are running unlicensed. Every other vendor in the tables above ships under open-source terms with no commercial-use fee. The full treatment, including audit exposure, is in Java support deadlines and the Oracle licensing trap.

Why the Fragmentation Exists

Upstream OpenJDK only maintains each version for six months — until the next release. Everything beyond that is a vendor choosing to backport security fixes: Oracle sells the service (Premier → Extended tiers), Red Hat bundles it with RHEL, and Adoptium (Temurin), Amazon, Microsoft, Azul and IBM give their builds away on their own schedules, each ending support when it stops serving their business. The specification is shared; the lifecycle is not. Treat “Java EOL” claims that do not name a vendor as unanswerable — and treat vendor switches as cheap, because they usually are: these builds pass the same compatibility kit and differ mainly in packaging, cadence and who answers the phone. The LTS cadence itself is now two years — 21 (2023), 25 (2025), and Java 29 planned for September 2027 — so each LTS gets a shorter free-vendor tail than the six-year gaps between 8, 11 and 17 trained everyone to expect.

Other Distributions

Three more builds appear often enough in inventories to know their dates. SapMachine (SAP) ends Java 17 support on September 1, 2026 — the earliest of any Java 17 date still ahead — Java 21 on September 1, 2028 and Java 25 on September 30, 2030. BellSoft Liberica ends standard support for 8 on November 30, 2026 and 17 on October 31, 2027, with paid extended tiers into 2030–2034. Alibaba Dragonwell ends 8 on June 30, 2026 and 17 on September 30, 2027. Each has a product page with every version.

How to Check Your Java Version and Vendor

Run java -version. The first line gives the version; the second names the vendor, which is the fact that decides your date:

For a machine-readable answer, java -XshowSettings:properties -version 2>&1 | grep -E "java.vendor|java.runtime.version"; on a running JVM, jcmd <pid> VM.version. Fleet-wide, the same two properties come from your CMDB or agent; the EOL Checker takes vendor and version and returns the date, and the Stack Scanner flags JDK and framework layers together from a pasted inventory.

The Compound Problem: Frameworks Pin JDKs

JDK end-of-life rarely travels alone. Spring Boot 2.x estates sit on Java 8/11; older Tomcat, Hibernate and Struts lines pin similar vintages — so a dead framework and a dying JDK usually arrive as a pair, and the framework is typically the harder migration. If that pairing describes your estate, the framework side has its own extended-support market: see Spring Boot, Tomcat, Hibernate and Struts lifecycles, or compare extended-support options →

What Happens When Your Java Build Reaches End of Support

The JVM keeps running — and every vulnerability disclosed afterwards stays open on it. Java runtimes are a recurring entry in CISA's Known Exploited Vulnerabilities catalog and a common initial-access and deserialization target, so an unpatched JDK under a public-facing application is a live exposure, not a paperwork problem. Compliance frameworks (PCI DSS, NIS2, ISO 27001, SOC 2) treat unsupported runtimes as a control failure, and Oracle's licence terms add a second dimension: an OTN-licensed Oracle JDK in commercial production without a subscription is a licensing exposure regardless of patch status.

Your Options When a Java Date Arrives

  1. Switch vendor, same version. The cheapest move and usually a binary swap: Oracle JDK 17 → Temurin/Corretto/Zulu 17 keeps you on Java 17 with free updates to 2027–2029. Regression-test, watch for Oracle-only features and GC tuning.
  2. Upgrade to Java 21 or 25. Resets the clock by years and, for Oracle users, restores NFTC free use (25). Real work if the code is on 8 or 11 — module system, removed APIs, framework upgrades — which is why estates on 8 tend to switch vendors first and upgrade second.
  3. Buy Oracle support. A Java SE Universal Subscription, priced per employee. Rational when you need Oracle-specific features, Oracle-backed SLAs, or are already licensed; the fee waivers make 8, 11 and 17 cheaper to keep than they were.
  4. Buy third-party extended support. Independent vendors sell security patches for Java versions past their free dates, including Java 8 and 11 on the older frameworks that pin them. See extended support options for how these programs work.

The right choice usually comes down to how many more years the application has to run and whether the framework underneath can move: under a year, a vendor swap or a bridge; one to three, migrate once; indefinitely, get to 21 or 25 now and put Java 29's date in the calendar.

The Checklist

  1. Inventory by vendor, not version: java -version across the fleet — “17” is half an answer; “Temurin 17” vs “Oracle 17” changes the deadline by years and the cost by thousands.
  2. Oracle JDK 17 estates: subscribers — nothing to do until September 2029, fee waived; non-subscribers — you have been unlicensed for updates since October 2024; switch or subscribe.
  3. Oracle JDK 21 estates without a subscription: move to Oracle JDK 25 or another vendor's 21 before the September 2026 update.
  4. RHEL Java 8 estates: plan for November 30, 2026.
  5. Check the framework layer — it is usually the binding constraint.

Frequently Asked Questions

When does Java 17 reach end of life?

It depends entirely on whose build you run. Oracle's free OpenJDK 17 builds ended in March 2022; Oracle JDK 17 Premier Support ends September 30, 2026, with Extended Support (fee waived) to September 30, 2029; SapMachine 17 ends September 1, 2026; Microsoft's build ends September 30, 2027; Eclipse Temurin and IBM Semeru run to October 31, 2027; Red Hat to December 31, 2027; Azul Zulu to September 30, 2029 (extended to 2031); Amazon Corretto to October 31, 2029. There is no single Java 17 EOL date.

What happens to Oracle JDK 17 on September 30, 2026?

Premier Support ends and Extended Support begins. Oracle's roadmap waives the Extended Support fee for Java SE 17 from October 2026 through September 2029, so Java SE Subscription customers keep receiving JDK 17 updates at no additional charge until then. Nothing changes for free users on that date — the permissive (NFTC) update window for JDK 17 already closed in September 2024, and updates since October 2024 require either a subscription or a non-commercial OTN use. Anyone on Oracle JDK 17 without a subscription is already out of free updates.

When does free Oracle JDK 21 end?

September 2026. Oracle JDK 21 has been free for all users under the No-Fee Terms and Conditions since September 2023, and Oracle's roadmap states that JDK 21 updates released after September 2026 will move to the OTN license — free only for personal and development use. To stay on a permissively licensed Oracle JDK after that, move to Oracle JDK 25; to stay on Java 21 for free, switch to Temurin, Corretto, Zulu, Microsoft or IBM builds. Oracle Premier Support for JDK 21 subscribers runs to September 30, 2028.

Is Java 8 still supported in 2026?

Yes — by some vendors, into the 2030s. Oracle Extended Support runs to December 31, 2030 (uplift fee waived), and Temurin, Corretto, IBM and Azul all maintain free Java 8 builds to December 31, 2030 or beyond. The nearest cliff is Red Hat's: OpenJDK 8 in RHEL ends November 30, 2026, the same day BellSoft's standard Liberica 8 support ends.

Is Java 11 end of life?

Only some builds. Red Hat's OpenJDK 11 ended October 31, 2024, SapMachine 11 in December 2024 and Oracle Premier Support in September 2023 — but Eclipse Temurin, Microsoft and IBM ship free Java 11 updates to late 2027, Amazon Corretto and Azul Zulu to January 31, 2032, and Oracle Extended Support runs to January 31, 2032. 'Java 11 is EOL' and 'Java 11 is supported for six more years' are both true statements about different binaries.

Can I switch JDK vendors without changing code?

Usually yes. Oracle JDK, Temurin, Corretto, Zulu, Red Hat, Microsoft and IBM builds all derive from the same OpenJDK source and pass the same Technology Compatibility Kit; swapping is typically a binary replacement plus a regression run. The main exceptions are applications that depend on Oracle-only commercial features, on a specific JIT or garbage-collector implementation (IBM Semeru uses OpenJ9 rather than HotSpot), or on vendor-specific cryptographic providers.

How do I check which Java version and vendor I am running?

Run java -version. The second line names the vendor: 'Java(TM) SE Runtime Environment' is Oracle JDK; 'OpenJDK Runtime Environment Temurin-17…' is Eclipse Temurin; 'Corretto-17…' is Amazon; 'Zulu17…' is Azul; 'Red_Hat-17…' is Red Hat; 'Microsoft-…' is Microsoft; IBM Semeru shows OpenJ9. For a machine-readable answer use java -XshowSettings:properties -version and read java.vendor and java.runtime.version; on a running JVM, jcmd <pid> VM.version.

When is the next Java LTS release?

Java 29, planned for September 2027 — Oracle moved to a two-year LTS cadence with Java 21 (September 2023) and Java 25 (September 2025). Under Oracle's NFTC pattern, that would also make September 2028 the likely end of free Oracle JDK 25 updates for all users.

Which Java version is the safest long-term choice in 2026?

Java 21 or Java 25, both LTS. Java 25 carries the longest runway — free vendor support to September 2031 (Temurin) and October 2032 (Corretto), Oracle Extended to September 2033, Azul extended to 2035. The vendor choice matters as much as the version: Corretto and Zulu currently publish the longest free support windows, and Oracle JDK 25 is free for all users under NFTC until roughly a year after Java 29 ships.

The Monthly EOL Digest™

Once a month — critical EOL dates, CVE blind spots, and lifecycle changes worth knowing.

© 2026 endoflife.ai · How we verify our dates · API · About · Data from endoflife.date (MIT)