JDK 17: New Long-Term Support Features Including Strict Floating Point Semantics, Foreign Function and Memory API, and Enhanced Random Number Generators
Java 17, the latest long-term support (LTS) release, is now available for production environments, bringing a host of new features and enhancements to the Java platform. This release marks a significant shift in Oracle’s support strategy, with LTS versions now scheduled to be released every two years instead of the previous three-year interval. This change aims to provide companies with more frequent access to new features while ensuring long-term stability and support. Non-LTS releases will continue to receive six months of support from Oracle.
One of the key additions in JDK 17 is context-specific deserialization filters. This new feature enhances security by allowing developers to define filters for object deserialization based on the context in which it occurs, thus preventing potential security vulnerabilities. Additionally, JDK 17 introduces a preview of pattern matching for switch statements, which simplifies the syntax and improves code readability by allowing more flexible and concise switch-case constructs.
JDK 17 incorporates all the enhancements made since the previous LTS release, JDK 11, which was released three years ago. This cumulative approach means that JDK 17 includes numerous improvements and new features that have been added to the Java platform over the past few years. With the introduction of more frequent LTS releases, developers and organizations can expect a more streamlined update cycle, allowing them to adopt new features more rapidly while maintaining a stable and supported environment.
Georges Saab, vice president of Oracle’s Java platform group, emphasized that the increased frequency of LTS releases will benefit companies that prefer to stick with LTS versions for their production environments. The next LTS release, Java 21, is scheduled for 2023. In the meantime, Oracle is offering free use of Oracle JDK binaries in production for three years from the release of JDK 17, extending one year beyond the release of the next LTS version. However, this offer does not include enterprise production support.
Data from New Relic, a leading application monitoring provider, reveals that LTS releases are overwhelmingly preferred in production environments. Nearly 100 percent of users are running either JDK 11 or JDK 8, the two most recent LTS releases. Specifically, 90 percent of users are on JDK 11, while 10 percent are still using JDK 8. This widespread adoption of LTS releases highlights their critical role in ensuring stability and support for enterprise applications.
Despite the dominance of LTS releases, Oracle has noted a steady increase in downloads of the six-month releases. Developers are increasingly interested in exploring the latest features and enhancements offered by these interim releases, while enterprises continue to focus on the stability and long-term support provided by LTS versions. Production builds of JDK 17 can be accessed on Oracle’s website, and OpenJDK open source builds are also available. The new features of JDK 17 include several important advancements that will benefit both developers and enterprises alike.