Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 35 Next »

Java 17 is a feature release which will obsolete Java 16 and became a long-term support (LTS) release of Java on its introduction on 14th September 2021.

Current status: Early Access

Page last updated: 2021-05-03, EA 20

Schedule:

  • 2021-06-10 Rampdown Phase One (fork from main line)
  • 2021-07-15 Rampdown Phase Two
  • 2021-08-05 Initial Release Candidate
  • 2021-08-19 Final Release Candidate
  • 2021-09-14 General Availability

Resources

Selected Changes Targeted to Java 17

  • JEP 356: Enhanced Pseudo-Random Number Generators
  • JEP 382: New macOS Rendering Pipeline
  • JEP 391: macOS/AArch64 Port
  • JEP 398: Deprecate the Applet API for Removal
  • JDK-6323374: Collections.unmodifiable* methods are idempotent for their corresponding collection. The unmodifiable* methods in java.util.Collections will no longer re-wrap a given collection with an unmodifiable view if that collection has already been wrapped by same method. (our unit tests still pass)
  • JDK-8235139: Deprecate the socket impl factory mechanism
  • JDK-8259709: Disable SHA-1 XML Signatures. XML signatures that use SHA-1 based digest or signature algorithms have been disabled by default. (our unit tests still pass)
  • JDK-8259801: Enable XML Signature secure validation mode by default

Proposed to Target Java 17

Significant Changes from Java 11 (18.9 LTS)

The following changes may factor in to our adoption of Java 17 as a new platform, and as a baseline for individual products:

From Java 12:

From Java 13:

  • JDK-8215608: Old Features Removed from javadoc  tool. No more HTML4 API documentation.

From Java 14:

From Java 15:

From Java 16:

  • JEP 394: Pattern Matching for instanceof
  • JEP 395: Records
  • JEP 396: Strongly Encapsulate JDK Internals by Default

From Java 17:

  • JEP 356: Enhanced Pseudo-Random Number Generators
  • JEP 391: macOS/AArch64 Port (not clear if this will be back-ported to, e.g., Java 11 or not)
  • No labels