[关闭]
@Rays 2021-12-22T04:00:50.000000Z 字数 3216 阅读 471

Java每周新闻:JDK 18进入Rampdown阶段,JDK 19专家组成立,Log4j2漏洞和MicroProfile 5.0

摘要: 自2021年12月6日开始的一周中,Java要点事件包括OpenJDK相关JEP、JDK 18进入Rampdown第一阶段、JDK 19专家组成立、Log4J中发现远程代码执行漏洞、MicroProfile 5.0,以及Spring、Hibernate和Quarkus的小版本发布(point release)。

作者: Michael Redlich

正文:

自2021年12月6日开始的一周中,Java要点事件包括OpenJDK相关JEP、JDK 18进入Rampdown第一阶段、JDK 19专家组成立、Log4J中发现远程代码执行漏洞、MicroProfile 5.0,以及Spring、Hibernate和Quarkus的小版本发布(point release)。

OpenJDK

已完成审核的JEP 421,即“弃用并移除Finalization功能”,在JDK 18中的状态由“建议定向发布”升级为“定向发布(Targeted)”。该JEP将在此后的JDK发布版中弃用自JDK 1.0就引入的对象终止(Finalization)机制。对象终止机制最初设计用于避免产生资源泄露问题,但默认启用情况下会导致不可预测延迟、非受控行为和线程等多处严重缺陷。

JDK 18

JDK 18早期访问构建(early-access builds)第27次构建(Build 27)于上周公开提供。相对于第26次构建,本次的关键更新包括对多处问题的修正,细节详见“发行说明”。

遵照JDK 18的发布规划,Oracle Java平台组首席架构师Mark Reinhold官宣JDK 18进入Rampdown第一阶段。这意味着JDK源代码仓库的主线已分支为稳定代码库,并且JDK 18中不会再额外添加任何JEP。至此,计划于2022年3月发布GA版的9个功能集最终为:

鼓励开发人员通过Java Bug Database上报软件缺陷。

JDK 19

JSR 394,即Java SE 19,于上周提交,正式宣布了JDK 19的六人专家组成立。他们分别是来自Azul Systems的Simon Ritter](https://www.linkedin.com/in/siritter/)、来自Eclipse基金会的Manoj Palat、来自红帽的Andrew Haley、来自SAP的Christoph Langer 、来自Oracle的Iris ClarkBrian Goetz,由Clark和Goetz担当该JSR的牵头人。其中给定的关键时间点包括:2022年6月至8月期间开放审核,2022年9月发布GA版。

JDK 19早期访问构建版第1次构建(Build 1)也于上周发布。

Log4j2的远程代码执行漏洞

上周,广为使用的Log4j2日志库被发现存在零日攻击漏洞,涉及2.0到2.14.1间的各版本。远程代码执行漏洞CVE-2021-44228可利用Java Naming和Directory Interface中存在的缺陷,在日志中执行恶意代码。Log4j2的贡献者迅速解决了漏洞,并发布了新版本2.15.0。InfoQ对此第一时间跟进并做了详细报道

MicroProfile

MicroProfile工作组正式发布的MicroProfile 5.0,对8个社区开发的API全部做了更新,即Config 3.0Fault Tolerance 4.0Health 4.0JWT Authentication 2.0Metrics 4.0OpenAPI 3.0OpenTracing 3.0Rest Client 3.0

最初基于各自相应JSR的CDI、JAX-RS、JSON-P和JSON-B API,现在已转为相应的Jakarta EE 9.1规范声明,分别为Jakarta 上下文和依赖注入3.0(CDI)、Jakarta RESTful Web服务3.0(JAX-RS)、Jakarta JSON处理2.0(JSON-P)和Jakarta JSON绑定2.0(JSON-B)。Jakarta注解(Annotations)2.0也已于近期添加到MicroProfile API核心集中。该规范声明中给定了一组表示通用语义概念的注解,用于支持声明式编程。

在独立规范声明中,只有上下文传播(Context Propagation)1.3做了更新。

InfoQ将对此进展做持续跟踪报道。

Spring框架

上周Spring团队聚焦于解决Spring Boot中的Log4j2漏洞问题,框架只有三次小版本发布。Spring Boot应用的开发维护人员只有在选用了Log4j2默认日志的情况下,才会受该漏洞的影响。

发布Spring Tools 4 for Eclipse, Visual Studio Code, and Theia 4.13.0中,包括Eclipse 2021-12和针对Apple Silicon平台(ARM M1)的构建。更多细节,提供在“变更日志”中。

最近发布的Spring Cloud 2021.0.0(也称为Jubilee)中提供Spring Cloud Sleuth 3.1.0,支持Spring Cloud ConfigSpring Cloud Stream ReactiveSpring SessionSpring Cloud Task等一系列Spring相关技术,还提供对Cassandra的支持。

Spring Native 0.11也已发布,其中新特性包括支持Spring Data MongoDB延迟加载(lazy loading )的新注解@DocumentReference、 恢复对Spring Integration的支持、支持非Spring Boot测试。Spring Native的使用环境是GraalVM 21.3、Spring Boot 2.6和Spring Cloud 2021.0。

Hibernate

作为Hibernate ORM 5.6版发行系列中的一个维护版本,5.6.2.Final版根据Java社区的反馈,恢复了部分在5.6.1.Final版中确定的弃用。这是因为“许多用户明确指出,这些弃用并非‘可操作的’,因而令人困惑。即在没有可替代API的情况下,此类弃用问题除视而不见之外无法得以解决。” 更多细节,参见“问题列表”。

发布Hibernate Search 6.1.0.Beta1版,包括可动态扩展的分布式索引、支持Jakarta EE 9.1、自定义Elasticsearch索引映射等新特性。其中还有一些完全变更,需注意协调策略database-polling已重命名为outbox-polling

Quarkus

红帽上周发布了Quarkus 2.5的第2个维护版本2.5.2.Final,其中修复了大量软件缺陷,并对文档做了改进。更多细节,参见“变更日志”。

原文链接: Java News Roundup: JDK 18 in Rampdown, JDK 19 Expert Group, Log4j2 Vulnerability, MicroProfile 5.0](https://www.infoq.com/news/2021/12/java-news-roundup-dec06-2021/)

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注