这是我参与 11 月更文挑战的第 9 天,活动详情查看:2021最后一次更文挑战。
本周(2021 年 11 月 1 日)的 Java 综述包含 OpenJDK JEP,JDK 18,Helidon 2.4.0,Open Liberty 21.0.0.12-beta,Spring Cloud 和其相关子项目的小数点发布,Quarkus 2.4.1.Final,Hibernate Reactive 1.0.1,WildFly 25.0.1 和 JReleaser 0.8.0 的新闻。
在审查结束后,JEP 418,网络地址解析 SPI,已从 Proposed to Target 状态提升至 Targeted 状态。该 JEP 建议为主机名和地址解析定义一个服务供给接口(SPI),以便 java.net.InetAddress
类可以利用默认内置 OpenJDK 解析器以外的解析器。
JEP 421,弃用与废除对象终止机制,已从 Draft 状态提升至 Candidate 状态。此 JEP 弃用了在 JDK 1.0 中首次引入的对象终止机制,以便在未来的 JDK 版本中移除。虽然对象终止机制旨在避免资源泄漏,但它存在一些严重缺陷,例如不可预期的延迟、不受约束的行为和线程,并且还始终默认启用。
JDK 18 早期访问版本(early access release)的 Build 22 在上周发布了,内容包括对 Build 21 的更新,解决了上个版本中的各个 issue。更多细节可以在发行说明中找到。
JDK 18 目前的特性集合如下:
- JEP 400:默认字符集为UTF-8;
- JEP 408:简便 Web 服务器;
- JEP 413:Java API 文档中的代码片段;
- JEP 416::使用方法句柄重新实现核心反射机制;
- JEP 417:Vector API(第三个孵化器);
- JEP 418:网络地址解析 SPI;
开发者可通过 Java Bug Database 提交漏洞。
作为他们对 Java 编程语言持续贡献的其中一步,微软宣布已经签署了 Java 规范参与协议(JSPA) 并加入 Java Community Process(JCP)。Oracle JCP 项目主席兼主任,Heather VanCura 表示:
我们很高兴欢迎微软加入 JCP 计划,它继续代表充满活力的 Java 生态系统,我们期待看到微软的贡献。
在此之前,作为 Adoptium Working Group 的创始成员之一,微软引入了自己的 OpenJDK 下游发行版:Microsoft Build of OpenJDK。
Oracle 发布了 Helidon 2.4.0 版本,内容包括:支持 JDK 17 和 MicroProfile 的 Long Running Actions(LRA) 和 Config 规范;与 MicroStream 6.0 集成;在本机映像构建中支持 Oracle 通用连接池;JEP 290 传入流的序列化过滤;和更多的改进功能。更多细节可以在发行说明中找到。
IBM 发布了 Open Liberty 21.0.0.12-beta 版本,支持即将发布的 MicroProfile 5.0 中的一些功能,跟上 Jakarta EE 9.1 的步伐。All Beta Features 包包含对 MicroProfile 规范的升级。Jakarta EE 9 Beta Features 包是个轻量级的包,仅包含 Jakarta EE 9 中的特性。
在忙碌的两周之后,Spring 团队发布了 Spring Cloud 和其子项目的小数点版本(point release),度过了相对清静的一周。
在迈向 Spring Cloud 2021.0.0 的道路上,第一个候选发行版(代号 Jubilee)发布了,对各种 Spring Cloud 子项目的依赖升级和修复,其中包括 Spring Cloud Sleuth,Spring Cloud Gateway 和 Spring Cloud Kubernetes。Spring Cloud 21.0.0-RC1 与 Spring Boot 2.6.0-RC1 兼容。
Spring Cloud Gateway 2.2.10.RELEASE 和 3.0.5 版本已发布,解决了 CVE-2021-22051 漏洞。使用 Spring Cloud Gateway 的应用程序容易受到恶意请求的攻击,这些请求可能会对下游服务发出额外请求。
Spring Cloud Data Flow 2.9.1 和 2.8.4 版本已发布,作为 2.9.0 和 2.8.3 版本的缺陷修复。更多细节可以在 2.9.1 和 2.8.4 版本的发行说明中找到。
Red Hat 发布了 Quarkus 2.4.1.Final 维护版本,修复原有缺陷,更新文档,并将依赖升级为 Hibernate ORM 5.6.1,Hibernate Reactive 1.0.1.Final,SmallRye Health 3.1.2 和 SmallRye GraphQL 1.3.5。更多细节可以在更新日志中找到。
在 Hibernate Reactive 1.0 一般可用(GA)版本发布后不到一周,第一个维护版本 —— 1.0.1.Final,以改进性能为特色发布了。更多细节可以在 issue 列表中找到。
Red Hat 发布了 WildFly 25 的维护版本。25.0.1 版本的依赖升级为 Jandex 2.4.1.Final 和 Elytron Web 1.10.0.Final。更多细节可以在 issue 列表中找到。
JReleaser 0.8.0 版本发布了,内容包含:支持国际化,支持将发行工件上传至 AWS S3 上的功能,并提供一个用于创建 ZIP/Tar 发行版的新归档汇编器。更多细节可以在更新日志中找到。