The Java 8 deadline nobody circled

Temurin now lists Java 8 as available until at least December 2030. The cliff is not coming, and the bundled JREs in your appliances were never going to take the updates anyway.

Java 8 shipped in 2014 and never left. Every modernization plan carries the same comforting assumption: a support cliff will force the issue eventually. Read the Adoptium support schedule: Eclipse Temurin, the main free distribution, lists Java 8's end of availability as "at least Dec 2030," with an 8 release published in July 2026 and the next one due in August. Twelve years in, the free updates keep coming, and the cliff keeps not arriving. That is the deadline nobody circled. There is not one.

"We migrated years ago" is the standard response, and it is usually true of the code you build. It is rarely true of the estate, and the estate is where the risk lives, because upstream support only patches what gets updated. Java 8 hides in three places the application inventory never looks:

  1. Vendor appliances and installers. The monitoring collector, the backup agent, the ETL tool from 2017: each one bundled a JRE, and the bundle does not update itself. Scan for java.exe and libjvm, not for your build files. The count will include products whose vendors no longer exist.
  2. Build infrastructure. The CI agent that compiles the modern services sometimes runs on an older runtime than anything it builds. Nobody checks the toolchain's own toolchain.
  3. The one internal app. Every estate has it: still on 8 because an abandoned library pinned it there. Its migration was descoped in three successive years. The library is the work; price the library, not the version bump.

The move, one afternoon: scan, sort into vendor-owned versus ours, and send the vendors a one-line email asking for their runtime roadmap in writing. For your own stragglers, the upgrade target is the current LTS, not 11; landing on an old LTS is scheduling the same project twice, and the LTS rule already covers why.

And stop waiting for the date. "Available until at least 2030" is a promise about binaries somebody installs, not about the JRE frozen inside the backup agent since 2017. No vendor deadline is coming to schedule this project for you. Circle a date of your own, put an owner beside it, and let the inventory, not the support table, tell you how big the job is.