本期 Java 近期新闻综述内容主要涉及 OpenJDK、JDK 20、Spring 里程碑更新、Eclipse Tumerin 19、OmniFaces 4.0、PrimeFaces 12.0、OmniFish 简介、Quarkus 2.13.1、Oracle 加入 Micronaut 基金会、Eclipse Vert.x 4.3.4、JobRunr 5.3、Apache Tomcat 9.0.68、Apache Camel 3.19、Apache Tika 2.5、ArchUnit 1.0 及 Devoxx Morocco 和 JAX 伦敦大会。
Oracle 编程语言设计师 Gavin Bierman 提交了两份 JEP 草案,一份是 8294285:switch 模式匹配(第 4 个预览版),另一份是 8294078:记录模式(第 2 个预览版)。与它们相对应的上一份 JEP 已经在 JDK 19 中交付,它们是在 Amber 项目的支持下,分别提出了第 4 和第 2 个预览版。预览功能可以根据不断增长的经验和反馈进行优化。
JEP 草案 8294285 是 JEP 427(switch 模式匹配第 3 个预览版)的升级,包括简化 switch 标签语法;在 switch 表达式、语句及其他支持模式的结构中支持泛型类型模式和记录模式的类型参数推断。
JEP 草案 4294087 是 JEP 405(记录模式第 1 个预览版)的升级,特性包括:支持泛型记录模式的类型参数推断;支持在增强 for 循环 header 中使用记录模式;移除命名记录模式支持。
亚马逊云科技首席工程师 Roman Kennke 提交了 JEP 草案 8294992:64 位对象头。在 Lilliput 项目的支持下,该 JEP 草案提出,将 Java 对象头从 96 或 128 位减少到 64 位。Lilliput 是 Kennke 创建的一个项目,于 2022 年 5 月实现了 64 位头的第一个里程碑。
JDK 20 早期访问构建的 Build 18 在上周发布,它是 Build 17 的升级,修复了各种问题。要了解更多细节,请查看发布说明。
对于 JDK 20,我们鼓励开发者通过 Java Bug 数据库报告缺陷。
在通往 Spring Cloud 2022.0.0(代号 Kilburn)的道路上,第 5 个里程碑版本发布,主要特点是 Spring Cloud 子项目升级到第 4 版的第 5 个里程碑版本,包括 Spring Cloud Consul、Spring Cloud Gateway、Spring Cloud OpenFeign 和 Spring Cloud Commons。Spring Cloud Netflix 4.0.0-M1 的主要特点是将一个依赖项升级到 Eureka 2.0.0,使 Spring Cloud Netflix 可以兼容即将发布的 Spring Framework 6.0 和 Spring Boot 3.0 正式版。要了解更多细节,请查看发布说明。
Spring Shell 的点版本和里程碑版本已经面向 Java 社区发布。2.1.2 版本基于 Spring Boot 2.7.4 构建,并向后移植了一些 Bug 修复。3.0.0-M1 版本有一些显著的变化,主要包括:依赖项升级到 Spring Boot 3.x;对 GraalVM 的支持基本完成;Spring Shell 现在是用 Gradle 构建的。要了解关于这些版本的更多细节,请查看 2.1.2 版本和 3.0.0-M1 版本的发布说明。
在通往 Spring Batch 5.0.0 的道路上,第 7 个里程碑版本发布,主要特性包括:支持使用任何类型作为作业参数;改进作业参数转换。要了解关于这个版本的更多细节,请查看发布说明。
Adoptium 工作组发布 Eclipse Tumerin 19,这是他们提供的 OpenJDK 19 下游发行版。
OmniFaces 发布了 Faces 实用工具库的 4.0 版本,主要特点是引入了一个新方法 addFacesScriptResource() 。这个方法是在 Components 类中定义的,可以兼容 Jakarta Faces 3.0 和 4.0。一个破坏性的变化是将最小依赖升级到 JDK 11 和 Jakarta EE 9 规范,即 Faces 3.0、Expression Language 4.0、Servlet 5.0、Contexts and Dependency Injection 3.0、Enterprise Web Services 2.0 和 Bean Validation 3.0。要了解关于这个版本的更多细节,请查看新增内容说明文档。
PrimeFaces 12.0.0 发布,主要是升级了许多依赖项,包括 hibernate-validator 6.2.1.Final、tomcat.version 9.0.58、slf4j-api 1.7.33、mockito-core 4.2.0、hazelcast 4.2.4 及其他 Maven 相关的模块。
OmniFish 是一家新成立的 Jakarta EE 咨询和支持公司。他们已经向 Java 社区介绍了自己。该公司致力于提供 Jakarta EE、Eclipse GlassFish 和 Piranha Cloud 支持,并且已经以参与者成员的身份加入了 Jakarta EE 工作组。Arjan Tijms、Ondro Mihályi 、David Matějček 和 Web 工程师 Bauke Scholtz 合伙创建了这家公司。他们在 GlassFish、Jakarta EE、Java 应用程序开发和 Java 中间件生产支持方面都有多年的经验。他们还是 Eclipse GlassFish 项目管理团队的成员。InfoQ 后续将带来更详细的报道。
红帽公司发布了 Quarkus 2.13.1.Final,主要是修复 Bug 和改进文档。由于 MicroProfile 规范的修改,MicroProfile OpenTracing and Metrics 规范的实现 SmallRye 被弃用。要了解关于这个版本的更多细节,请查看变更日志。
Micronaut 基金会宣布,Oracle 已加入 Micronaut 基金会,成为其工程合作伙伴。这是一项新计划,旨在“识别出可以开展合作的组织,由他们赞助 Micronaut 框架核心提交者团队的一名或多名成员的全职工作,关注代码库的关键共享和共用部分。”自 2020 年以来,Oracle 一直在为 Micronaut 项目提供开源贡献,如 Micronaut AOT 和 Micronaut Serialization。
作为对 4.3.3 版本中报告的若干问题的回应,Eclipse Vert.x 4.3.4 发布,主要是修复了那些 Bug,记录了弃用内容和破坏性变化,并继续为虚拟线程孵化项目提供支持。要了解关于这个版本的更多细节,请查看发布说明。
Hibernate ORM 6.1.4.Final 发布,修复了一些 Bug 并进行了增强,在从包含分配了标识符的 SELECT 语句执行 INSERT 时不再生成不必要的多表插入。
JobRunr 5.3.0 发布,支持 Kotlin 1.7.20、Spring Boot 3.0.0-M5 和 Spring Boot 上下文索引器——一个可以生成 Spring 组件索引的实用工具,能够加快启动时间。要了解关于这个版本的更多细节,请查看发布说明。
Apache Tomcat 9.0.68 发布,其中包含一些值得注意的 Bug 修复,例如:破坏 JSP includes 的重构回归;使用 HTTP/2 和 NIO2 过程中客户端断开连接时出现的意外超时。此外,这个版本还执行了 RFC 7230——超文本传输协议(HTTP/1.1):消息语法和路由。这样,对于 content-length 消息头格式错误的请求,总是以 400 服务器响应拒绝。要了解关于这个版本的更多细节,请查看变更日志。
Apache Camel 3.19.0 发布,带来了 259 项 Bug 修复、改进和依赖项升级,其中包括 gRPC 1.48.1、Spring Boot 2.7.3、JUnit 5.9 以及 Artemis 2.25.x。hadoop-common 模块已升级到 3.3.3 版本,解决了 CVE-2022-26612 漏洞(TAR 条目可能会创建未解析符号链接,指向预期提取目录下的外部目录)。要了解关于这个版本的更多细节,请查看发布说明。
Apache Tika 2.5.0 发布,特性包括:改进了 PDF/UA、PDF/VT 和 PDF/X 的 PDF 子集信息提取;避免从 PDF 中提取书签时出现无限循环;通过 AutoDetectParserConfig 类启用提取配置。要了解关于这个版本的更多细节,请查看发布说明。截至 2022 年 9 月 30 日,Apache Tika 1.x 版本序列的生命周期已经结束,不再支持了。
TNG 科技咨询公司发布了 ArchUnit 1.0.0 版本,这是一个可扩展的开源库,用于检查 Java 代码的架构,检查包和类、层和片之间的依赖关系,并检查循环依赖关系。该版本带来了多项增强,包括:不再将 archunit_ignore_patterns.txt 文件中定义的忽略规则与 FreezingArchRule 类一起填充 ViolationStore 接口的实例。为了消除歧义,该版本重命名了大量的“getter”方法,导致了一些破坏性的更改。InfoQ 后续将带来更详细的报道。
JHipster Lite 0.17.0 发布,带来了 Bug 修复、增强和依赖项升级,后者主要包括 keycloak 19.0.3、mongodb 1.17.5、react-hook-form 7.37.0 和 vite 3.1.6。
Devoxx Morocco 2022 于上周在摩洛哥阿加迪尔的塔哈泽特湾希尔顿海滩度假酒店举行,来自 Java 社区的许多演讲者发表了演讲,主题包括:Java 与编程语言;架构与安全;Devops、云、容器和基础设施;数据与人工智能。
类似地,Jax London 2022 于上周在英国伦敦的商业设计中心举行,吸引了许多来自 Java 社区的演讲者,他们出席了各分会场和研讨会。
原文链接:
https://www.infoq.com/news/2022/10/java-news-roundup-oct03-2022/
声明:本文为InfoQ翻译,未经许可禁止转载。
点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!
智联招聘:Q3 全国平均招聘月薪 10168 元;曝特斯拉拒招小鹏前员工;英特尔或裁员数千人,国内公司涉多起劳动纠纷|Q 资讯
专访“MySQL 之父”:我曾创造 MySQL,也将颠覆 MySQL