JDK 27, the reference implementation of Java 27, is now Generally Available. We shipped build 35 as the second Release Candidate of JDK 27 on 20 August, and no P1 bugs have been reported since then. Build 35 is therefore now the GA build, ready for production use. GPL-licensed OpenJDK builds from Oracle are available here: https://jdk.java.net/27 Builds from other vendors will no doubt be available soon. This release includes nine JEPs [1]: 523: Make G1 the Default Garbage Collector in All Environments 527: Post-Quantum Hybrid Key Exchange for TLS 1.3 531: Lazy Constants (Third Preview) 532: Primitive Types in Patterns, instanceof, and switch (Fifth Preview) 533: Structured Concurrency (Seventh Preview) 534: Compact Object Headers by Default 536: JFR In-Process Data Redaction 537: Vector API (Twelfth Incubator) 538: PEM Encodings of Cryptographic Objects (Third Preview) This release also includes, as usual, hundreds of smaller enhancements and thousands of bug fixes. Thanks to everyone who contributed this release, whether by designing and implementing features or enhancements, by fixing bugs, or by testing the early-access builds. - Mark [1] https://openjdk.org/projects/jdk/27/
Java 27
Why This Matters
Java 27 is now generally available, delivering a mix of performance, security, and language usability improvements that will shape how enterprise and cloud software is built on the JVM. Notable changes like G1 becoming the default garbage collector everywhere, post-quantum TLS key exchange, and compact object headers signal Java's ongoing push toward better performance and future-proof security, which matters broadly since Java remains a backbone of enterprise infrastructure.
Key Takeaways
- JDK 27 ships with nine JEPs, including G1 as the universal default garbage collector and compact object headers enabled by default for memory efficiency.
- Security-conscious developers gain post-quantum hybrid key exchange support for TLS 1.3, preparing Java applications for future cryptographic threats.
- Several preview and incubator features continue to mature, including Structured Concurrency, Primitive Types in Patterns, and the Vector API, showing Java's iterative approach to evolving the language.
Get alerts for these topics