本期 Java 新闻综述主要包括以下新闻:处于 JDK 24 Targeted 和 Proposed to Target 状态的 OpenJDK JEPs;Jakarta EE 11 核心配置文件处于发布审查中;2024 年 11 月 Payara 平台发布;Vert.x 5.0 的第一个候选版本;以及 Log4j 2.24.2 和 JobRunr 7.3.2 的小版本。
OpenJDK
以下 JEP 已经成功地完成了各自的审查,现在已处于 JDK 24 的 Targeted 状态。
JEP 497,基于模格的抗量子数字签名算法 [公告]
JEP 496,基于模格的抗量子密钥封装机制 [公告]
以下 JEP 已提升为 JDK 24 的 Proposed to Target 状态。它们的审查预计于 2024 年 11 月 25 日和 2024 年 12 月 26 日结束(JEP 499)。
JEP 501:弃用32位x86端口以进行删除 [公告]
JEP 499:结构化并发(第四次预览)[公告]
JEP 498:在sun.misc.Unsafe使用内存访问方法时发出警告 [公告]
更多关于这些 JEP 相关的详细信息,请参阅 InfoQ 的这篇新闻报道。
JDK 24
JDK 24早期访问构建版本的Build 25于上周发布,其中包含针对 Build 24 的更新,其中包括对各种问题的修复。有关该版本的更多详细信息,请参阅发布说明。
对于JDK 24,鼓励开发人员通过Java Bug数据库报告缺陷。
Jakarta EE
Eclipse 基金会的 Jakarta EE 发人员倡导者 Ivar Grimstad在其每周Hashtag Jakarta EE博客中提供了 Jakarta EE 11 的最新情况,他写道:
一些令人兴奋的消息!Jakarta EE Core Profile 11终于进入发布审查阶段了。由于 WildFly 和 Open Liberty 都通过了 TCK,因此有两种兼容的实现可用。投票最迟将于 12 月 4 日结束,但如果所有成员都投票了,投票可能会提前结束。希望不久我就能与大家分享关于Jakarta EE Platform 11和Jakarta EE Web Profile 11同样令人兴奋的消息。对 TCK 进行现代化和重构的工作仍在进行中。
通往 Jakarta EE 11 的道路上包括四个里程碑版本,在 2024 年第 4 季度发布 GA 版本之前,可能会根据需要发布候选版本。
Spring 框架
对于 Spring 来说,本周是非常忙碌,因为各个团队已经发布了预期中的 GA 版本,包括Spring Boot 3.4、Spring Security 6.4、Spring Authorization Server 1.4、Spring Integration 6.4、Spring Modulith 1.3、Spring AMQP 3.2、Spring for Apache Kafka 3.3.0 和Spring for Apache Pulsar 1.2。更多详细信息请参阅 InfoQ 的这篇新闻报道。
Payara
Payara发布了 2024 年 11 月版的Payara Platform,其中包括社区版 6.2024.11、企业版 6.20.0 和企业版 5.69.0。除了缺陷修复和依赖项升级外,所有这三个版本都提供了新特性:支持 Tom 的Obvious Minimal Language,即更广为人知的 TOML,用在 MicroProfile Config 规范中;以及在自动化部署组(Automated Deployment Groups)中添加自动命名功能,从而简化了集群管理操作。有关这些版本的更多详细信息,请参阅社区版6.2024.11、企业版6.20.0和企业版5.69.0的发布说明。
本次发版还包含 Payara 社区版 7.2024.1 的第二个 alpha 版本,该版本支持即将发布的 Jakarta EE 11,并实现了 Jakarta EE 11 除了 Jakarta Authentication 和 Jakarta Data 之外的 Jakarta EE 11 平台规范。
Open Liberty
IBM发布了Open Liberty的 24.0.0.12-beta 版,该版本在其Jakarta XML Web Services规范的实现中增强了入站 SOAP 消息验证,从而简化了消息调试,并提供了更具弹性的 Web 服务和客户端应用程序。可以将新属性( enableSchemaValidation
、 enableDefaultValidation
和 ignoreUnexpected elements
)添加到 server.xml
文件中的 webService
和 webServiceClient
元素中。
Micronaut
Micronaut 基金会发布了Micronaut Framework 4.7.1 版本,其中包含了Micronaut Core 4.7.6,并对以下模块进行了缺陷修复和补丁更新:Micronaut Security、 Micronaut JAX-RS、Micronaut Data、Micronaut OpenAPI/Swagger Support和Micronaut Micrometer。有关该版本的更多详细信息,请参阅发布说明。
JobRunr
JobRunr 7.3.2 的发布提供了缺陷修复和增强功能,例如:确保 Interval
类是幂等的,以防止从 BackgroundJobServer
类实例化的 JobZooKeeper
类的实例在关键启动任务失败时启动;以及在 IoC 容器关闭时捕获和转换 JobActivatorShutdownException
。有关该版本的更多详细信息,请参阅发布说明。
Apache Log4j
Apache Log4j 2.24.2 的发布主要解决了 Log4j API 初始化代码中的一个严重缺陷,该缺陷有可能导致 LogManager 类中定义的 getLogger()
方法在某些条件下返回 null
。其他值得注意的修复包括:由于 StackTraceStringResolver
类中的“off-by-one”(或 fencepost 错误)导致的 ArrayIndexOutOfBoundsException
;以及由于 2.24.1 版本中的日志记录器损坏而导致的 NullPointerException
。有关该版本的更多详细信息,请参阅发行说明。
Eclipse Vert.x
Eclipse Vert.x 5.0 的第一个候选版本发布,包含的特性有:一个新的 VerticleBase
类,它推进了基于 future 的模型,取代了 Vert.x 早期版本中使用的回调异步模型。5.0 版将支持带有显式模块的 Java 平台模块系统(Java Platform Module System,JPMS)。JPMS示例已提供给对其入门感兴趣的开发人员。有关该版本的更多详细信息,请参阅发布说明、弃用和重大更改。Vert.x 团队预计在 2024 年 12 月 GA 版本发布之前会有更多的候选版本。
Gradle
Gradle 8.11.1 是第一个维护版本,它解决了以下问题:在 Gradle 的隔离项目和并行配置中损坏的 BuildEventSListener
注册表接口;升级到 Gradle 8.11 之后,在生成问题报告时出现的 ArrayIndexOutOfBoundsException
;以及由于字节码拦截而无法在 8.10 版本中执行 Gradle 任务。有关该版本的更多详细信息,请参阅发布说明。
原文链接:
https://www.infoq.com/news/2024/11/java-news-roundup-nov18-2024/
评论