
OpenJDK
两个 JEP 已从 Candidate 状态进入到 Proposed to Target 状态,目标版本为 JDK 25,分别在这里和这里进行了公告。这两个 JEP 分别是:JEP 512(紧凑源文件和实例主方法)和 JEP 511(模块导入声明)。这两个 JEP 的评审于 2025 年 4 月 28 日星期一结束,每个 JEP 的详细信息可在 InfoQ 的新闻报道中找到。
JEP 513(灵活的构造器)已从 JEP Draft 8344702 状态进入到 Candidate 状态。该 JEP 提议在经过三轮预览后最终确定该特性,没有发生变更。这三轮预览分别是:在 JDK 24 中交付的 JEP 492(灵活的构造器(第三次预览))、在 JDK 23 中交付的 JEP 482(灵活的构造器(第二次预览))以及在 JDK 22 中交付的 JEP 447(super(...)的前置语句(预览))。此功能允许在构造器的 this()或 super()调用之前出现不引用正在创建的实例的语句,并保留构造器现有的安全性和初始化保证。Oracle 技术顾问成员 Gavin Bierman 提供了一个初步规范,供 Java 社区评审并提供反馈。
JDK 25
JDK 25早期访问版本的Build 20已发布,包含自 Build 19 以来的更新,包括对各种问题的修复。更多关于此版本的详细信息可在发行说明中找到。
对于 JDK 25,开发者可以通过Java Bug Database报告错误。
GlassFish
GlassFish 7.0.24,即第二十四个维护版本发布,包含了错误修复、依赖项升级和一些新功能,例如:支持 JDK 24;通过使用 Java Files类中定义的 walkFileTree()方法提高文件发现效率,从而加快部署时间。更多关于此版本的详细信息可在发行说明中找到。
Spring Framework
本周 Spring 团队非常忙碌,各个团队发布了 Spring Boot、Spring Data 2025.0.0、Spring Security、Spring Authorization Server、Spring Session、Spring Integration、Spring Modulith 和 Spring Web Services 的第一个候选版本。Spring Data 2025.1.0 和 Spring for Apache Kafka 的第二个里程碑版本,以及 Spring Vault 的第一个里程碑版本也已发布。更多详细信息可在 InfoQ 的新闻报道中找到。
Spring Cloud Data Flow团队宣布停止对该项目以及Spring Cloud Deployer和Spring Statemachine的开源支持。原因如下:
Spring Cloud Data Flow 八年前从 Spring XD 诞生,用于协调批量和流处理工作负载,并在过去几年中取得了巨大成功。然而,为了使 Spring Cloud Data Flow 及相关生态系统项目在未来能够可持续发展,我们决定仅将 Spring Cloud Data Flow 作为商业产品发布。
从 2.11.x、2.9.x 和 4.0.x 版本之后,后续版本将仅提供给Tanzu Spring客户。
Open Liberty
IBM发布Open Liberty 25.0.0.4 版本,特性包括:支持 Java 24;通过Audit 2.0功能收集 Liberty 审计日志,并将其发送到 OpenTelemetry 导出器;为J2EE Management 1.1、Application Client Support for Server 1.0、Jakarta Application Client Support for Server 2.0和Web Security Service 1.1功能提供InstantOn支持。此外,该版本还解决了可能导致拒绝服务的Netty和Apache CXF漏洞,这些漏洞分别出现在 Netty 4.1.118.Final 及更早版本以及 Apache CXF 3.5.10、3.6.5 和 4.0.6 之前的版本中。
Quarkus
Quarkus 3.21.4,即第四个维护版本发布,带来了一些显著的变化,例如:解决了使用SmallRye实现的MicroProfile Fault Tolerance规范时抛出的 StackOverflowError 问题;在创建名字重复的HttpSecurityPolicy接口实例时,添加了相应的警告或错误消息提示。更多关于此版本的详细信息可在发行说明中找到。
Helidon
Helidon 4.2.1发布,包含了错误修复和一些显著的变化,例如:在MTimer类的 toString()方法中,使用Timer接口的基本单位,用 JSON 格式改进了指标报告;为TcpClientConnection类添加可配置的缓冲区支持,防止小写入块。更多关于此版本的详细信息可在发行说明中找到。
Hibernate
Hibernate ORM 7.0.0 的第一个候选版本发布,带来了一些新功能,例如:新的QuerySpecification接口,为所有查询规范提供了一组通用方法,允许迭代式、程序化地构建查询;从Hibernate Commons Annotations(HCANN)迁移到新的Hibernate Models项目,用于在底层处理应用程序领域模型。此外还支持Jakarta Persistence 3.2规范,针对 Jakarta EE 11 的最新版本。开发团队预计这将是正式发布之前的唯一候选版本。更多关于此版本的详细信息可在发行说明和迁移指南中找到。
JBang
JBang 团队推出了Jash,一个新的 Java 库,提供了一种执行进程或 shell 脚本的方法,这种方法“流畅、可预测,并具有出色的开发者体验”。Jash 的发音为“Jazz”,为开发者巧妙地处理了多线程的复杂性。更多关于此初始版本的详细信息可在发行说明中找到,InfoQ 后续将会发布更详细的新闻报道。
Gradle
在发布了三个候选版本后,Gradle 8.14发布,带来了一些新功能,例如:支持 JDK 24;引入了延迟依赖配置初始化,以提高配置性能和内存使用效率;在配置缓存中引入了新的完整性检查模式,以改进调试体验。更多关于此版本的详细信息可在发行说明中找到。
原文链接:
https://www.infoq.com/news/2025/04/java-news-roundup-apr21-2025/
评论