Java开发工具包(JDK)27作为Java 27的参考实现现已正式发布(General Availability)。我们于8月20日发布了build 35作为JDK 27的第二个候选版本(Release Candidate),此后未收到P1级缺陷报告。因此build 35现为GA版本,可用于生产环境。甲骨文(Oracle)提供的GPL许可开放JDK(OpenJDK)构建已可获取,其他供应商的构建也将很快推出。本版本包含九项JEP,例如将G1设为默认垃圾收集器等。
正文
JDK 27 作为 Java 27 的参考实现,现已正式发布。我们于 8 月 20 日发布了第二个候选版本 build 35,此后未报告任何 P1 级 bug,因此 build 35 现为 GA 版本,可用于生产环境。Oracle 提供的 GPL 许可 OpenJDK 构建可在此下载:https://jdk.java.net/27 ,其他厂商的构建预计不久后也会推出。
本版本包含九个 JEP(详见 https://openjdk.org/projects/jdk/27/):
- 523:在所有环境中将 G1 设为默认垃圾收集器
- 527:TLS 1.3 的后量子混合密钥交换
- 531:惰性常量(第三次预览)
- 532:模式、instanceof 和 switch 中的基本类型(第五次预览)
- 533:结构化并发(第七次预览)
- 534:默认启用紧凑对象头
- 536:JFR 进程内数据脱敏
- 537:向量 API(第十二次孵化)
- 538:加密对象的 PEM 编码(第三次预览)
本版本还如往常一样包含数百项小改进和数千个 bug 修复。感谢所有贡献者,无论是以设计实现功能、修复 bug 还是测试早期访问版本的方式。
评论
讨论整体带着一种“又来了”的疲惫感,主轴在于 Java 的发布节奏究竟是优势还是拖累:多数声音对核心能力长期停留在预览与孵化状态表示不耐烦,少数视角则承认高频迭代本身有其价值;关于 Valhalla 与空值安全的期待,则普遍交织着自嘲式的漫长等待。
认为核心 API 迟迟不 GA 已经消耗掉社区耐心
- Vector API 用了很多年,至今仍在等正式版,而它恰恰是神经信息检索(RAG、记忆)这类场景的刚需(较多人)。有人借“第十二次孵化”的措辞发问:这颗蛋到底还能不能孵出来。 > 都第十二次孵化了,这蛋真的还活着吗?(@rf15)
认为 Oracle 节奏更快但公告透出疲态
- 来自 C# 开发者的对比视角:Oracle 的发版节奏大约是微软的两倍,而且 Java 很少有功能在一个正式版本里连做两轮预览;这也可能是因为 Java 社区体量更大、平台包办的东西更少、更多留给社区(较多人)。同时这次公告的语感更像开源项目“我们做完了,我们累了”,而非微软式的大张旗鼓。 > 读起来像是开源项目的“我们完工了,也累垮了”,而不是微软那种热闹的发布。(@moomin)
对 Valhalla 和空值安全抱以近乎自嘲的期待
- Valhalla 要到 Java 28(明年)才进入预览,于是有人把空值类型安全列进“有生之年”清单(较多人)。
仍在追问 2026 年新项目该不该选 Java
- 有开发者把问题直接抛回社区:严肃地问,2026 年什么样的绿地项目才该用 Java(少数人)。
有价值的补充
- Vector API 的实际用途是神经信息检索(RAG、记忆),核心依赖内容向量化和点积相似度匹配。
- CultRepo 在 YouTube 上的纪录片《The Java Story》值得一看,其中一大议题正是被这里反复调侃的发版节奏。
- 社区情绪的一个注脚:敲门——谁啊——长久的沉默——Java。(@taspeotis)