Java Version Almanac

The information below presents data on Java 16, made available by Marc R. Hoffmann, from javaalmanac.io, provided under the CC BY-SA 4.0 license.

Java versions:

Java 17

version: 17 Release date: EOL date: bytecode: 61.0
Documentation: notes , vm , lang , api SCM: git
Distro TCK 1 Vendor License Platforms
Corretto 17 Amazon GPLv2+CE
  • alpine-x64
  • linux-arm64
  • linux-x64
  • macos-arm64
  • macos-x64
  • windows-x64
Microsoft Build of OpenJDK 17 Microsoft GPLv2+CE
  • linux-arm64
  • linux-x64
  • macos-arm64
  • macos-x64
  • windows-arm64
  • windows-x64
Oracle JDK 17 Oracle Oracle No-Fee
  • linux-arm64
  • linux-x64
  • macos-arm64
  • macos-x64
  • windows-x64
Oracle OpenJDK 17 Oracle GPLv2+CE
  • linux-arm64
  • linux-x64
  • macos-arm64
  • macos-x64
  • windows-x64
Red Hat build of OpenJDK 17 Red Hat GPLv2+CE
  • windows-x64
SapMachine 17 SAP GPLv2+CE
  • linux-ppc64
  • linux-ppc64le
  • linux-x64
  • macos-arm64
  • macos-x64
  • windows-x64
Zulu Builds of OpenJDK 17 Azul Systems GPLv2+CE
  • alpine-x64
  • linux-x86
  • linux-x64
  • windows-x86
  • windows-x64
  • macos-x64
  • macos-arm64
  1. Technology Compatibility Kit

New Features

Language

  • Restore Always-Strict Floating-Point Semantics ( JEP 306 )
  • Pattern Matching for switch Preview ( JEP 406 )
  • Sealed Classes ( JEP 409 )

JVM

  • New macOS Rendering Pipeline ( JEP 382 )
  • macOS/AArch64 Port ( JEP 391 )
  • Strongly Encapsulate JDK Internals ( JEP 403 )

API

  • Enhanced Pseudo-Random Number Generators ( JEP 356 )
  • Deprecate the Applet API for Removal ( JEP 398 )
  • Remove RMI Activation ( JEP 407 )
  • Deprecate the Security Manager for Removal ( JEP 411 )
  • Foreign Function & Memory API (Incubator) ( JEP 412 )
  • Vector API (Second Incubator) ( JEP 414 )

Tools

  • Remove the Experimental AOT and JIT Compiler ( JEP 410 )

New APIs

Compare to Java:
base: version: 17 build 17.0.1+12
target: version: 16 build 16.0.2+7
base: version: 17 build 17.0.1+12
target: version: 15 build 15.0.2+7