Java 近期新闻:Vector API、Spring 升级及 CVE、Payara 平台、Groovy 和 TomEE 升级

简介: Java 近期新闻综述,内容主要涉及 OpenJDK、JEP 426、Oracle 发布 4 月关键补丁更新、JDK 19、Liberica JDK 及原生镜像工具包升级、多个 Spring 点版本和里程碑版本、Payara 平台 April 2022 版本发布、Quarkus 2.8.1.Final、Apache Groovy 4.0.2、Apache TomEE 8.0.11、JobRunr 5.0.1 和一项 JReleaser 1.0 升级。

Java 近期新闻综述,内容主要涉及 OpenJDK、JEP 426、Oracle 发布 4 月关键补丁更新、JDK 19、Liberica JDK 及原生镜像工具包升级、多个 Spring 点版本和里程碑版本、Payara 平台 April 2022 版本发布、Quarkus 2.8.1.Final、Apache Groovy 4.0.2、Apache TomEE 8.0.11、JobRunr 5.0.1 和一项 JReleaser 1.0 升级。

OpenJDK

在从 Draft 状态提升到 Candidate 状态一周后,JEP 426(Vector API,第四轮孵化)又从 Candidate 状态提升到了 JDK 19 的 Proposed to Target 状态。在 Panama 项目的支持下,这个 JEP 包含了针对前三轮孵化的改进:JEP 417(Vector API第三轮孵化,在 JDK 18 中交付)、JEP 414(Vector API第二轮孵化,在 JDK 17 中交付)以及 JEP 338(Vector API第一轮孵化,在 JDK 16 中作为孵化器模块交付)。JEP 426 提议增强了 Vector API,以便按照 JEP 424(外部函数 & 内存API预览版)的定义,从MemorySegment加载或向MemorySegment存储向量。评审预计将于 2022 年 4 月 28 日结束。

作为 2022 年 4 月发布的关键补丁更新的一部分,Oracle发布了JDK 18.0.1、17.0.3、11.0.15、8u331 和 7u341 的版本更新。要了解更多细节,请查阅JDK 18、JDK 17、JDK 11、JDK 8和JDK 7的发布说明。

JDK 19

JDK 19早期访问构建的Build 19在上周发布,它是 Build 18 的升级,修复了各种问题。要了解更多细节信息,请查看发布说明。

对于JDK 19,我们鼓励开发者通过Java Bug数据库报告缺陷。

Liberica JDK 和原生镜像工具包

在 Oracle发布2022 年 4 月关键补丁更新的同时,BellSoft发布了Liberica JDK的 18.0.1、17.0.3、11.0.15 和 8u332 版本,这是他们 OpenJDK 的下游发行版。

BellSoft 还发布了 Liberica 原生镜像工具包(NIK)的一个新版本 22.1.0 和一个升级版本 21.3.2。新特性包括:在指向分析过程中对堆进行增量、并发扫描,缩短原生镜像构建时间;支持 JFR 事件GarbageCollection、GCPhasePause、SafepointBegin、SafepointEnd和ExecutionSample;一个专门在原生镜像中搜索有漏洞的 log4j 库并生成告警的功能。这个版本还废弃了在运行时链接镜像的--allow-incomplete-classpath选项,它现在是默认选项。我们鼓励开发者使用新增的--link-at-build-time选项在构建时链接镜像。

Spring Framework

对于 Spring 团队,这可是忙碌的一周,因为他们提供了部分项目的多个候选版本和点版本。

在通往 Spring Boot 2.7.0 的道路上,第一个候选版本发布,其中包括 Bug 修复、文档改进和依赖升级。新特性包括 Kafka 重试主题自动配置和 GraphQL RSocket 支持自动配置。要了解关于这个版本的更多信息,请查看发布说明。

Spring Boot 2.6.7发布,提供了 38 项 Bug 修复、文档改进和依赖升级,涉及:Spring Framework 5.3.19、Spring Data 2021.1.4、Spring Session 2021.1.3、Spring Security 5.6.3、Micrometer 1.8.5、Reactor 2020.0.18 和 Apache Tomcat 9.0.62。要了解关于这个版本的更多信息,请查看发布说明。

Spring Boot 2.5.13发布,提供了 31 项 Bug 修复、文档改进和依赖升级,涉及:Spring Framework 5.3.19、Spring Data 2021.0.11、Spring Session 2021.0.6、Spring Security 5.5.6、Micrometer 1.7.11、Reactor 2020.0.18 和 Apache Tomcat 9.0.62。

这两个 Spring Boot 版本都解决了 VMware 上周宣布的 CVE-2022-22968:Spring框架数据绑定规则漏洞。要了解关于这个版本的更多信息,请查看发布说明。

VMware宣布了 CVE-2022-22969,即spring-security-oauth2中的拒绝服务(DoS),2.5.2 之前的Spring Security OAuth版本容易受到通过 OAuth 2.0 客户端应用程序发起授权请求的拒绝服务攻击。Spring Security OAuth 2.5.2 解决了这个 CVE。

在通往 Spring for GraphQL 1.0 的道路上,第一个候选版本发布,它具有以下新特性:支持RSocket协议的 GraphQL 服务端和客户端;支持将 GraphQL over HTTP 媒体类型(application/graphql+json)作为默认媒体类型;改进的 GraghQLSource Builder。

Spring Data 2021.2.0-RC1、2021.1.4 和 2021.0.11 版本发布,提供了 Bug 修复和依赖升级,涉及:Spring Data Commons 2.7.0-RC1、2.6.4、2.5.11;Spring Data MongoDB 3.4.0-RC1、3.3.4、3.2.11;Spring Data JDBC 2.4.0-RC1、2.3.4、2.2.11;Spring Data Redis 2.7.0-RC1、2.6.4、2.5.11。

同样,Spring Session 2021.2.0-RC1、2021.1.3 和 2021.0.6 版本发布,提供了 Bug 修复和依赖升级,涉及:Spring Session Core 2.7.0-RC1、2.6.3、2.5.6; Spring Session Data Redis 2.7.0-RC1、2.6.3、2.5.6; Spring Session JDBC 2.7.0-RC1、2.6.3、2.5. 6;Spring Session Hazelcast 2.7.0-RC1、2.6.3、2.5.6;Spring Session MongoDB 2.7.0-RC1、2.6.3;Spring Session for Apache Geode 2.7.0-RC1、2.6.1、2.5.6。

在通往 Spring Security 5.7.0 的道路上,第一个候选版本发布,提供了 Bug 修复、文档改进和依赖升级。新特性包括:新增SecurityContextHolderFilter类,允许显式保存SecurityContext接口;针对Cross-Origins Policies头增加 DSL 支持;允许在受信任客户端配置Proof Key for Code Exchange(PKCE);支持 SAML 2.0 Login 和 Single Logout XML。要了解关于这个版本的更多信息,请查看发布说明。

Spring Security 5.6.3和5.5.6版本发布,提供了 Bug 修复和依赖升级,涉及:Spring Framework 5.3.19;Spring Data 2021.1.3 和 2021.0.10;Reactor Netty 1.0.18;Project Reactor 2020.0.18。

Payara

Payara 公司发布了Payara平台的 April 2022 版。5.2022.2 社区版包括 13 项 Bug 修复,两项组件升级、三项改进和三项安全修复。5.38.0 企业版包括两项 Bug 修复、一项改进和四项安全修复。两个版本共有的新特性包括:一个新的gRPC扩展;Payara 服务器中 Spring Framework WAR 打包应用程序 Spring4Shell 漏洞的热补丁;Jakarta EE 9 和PrimeFaces可以搭配使用 Eclipse Transformer。

Payara 还宣布,Payara 5 社区版的生命周期将在下一个版本之后结束,Payara 6 社区版将与即将发布的 Jakarta EE 10 GA 版本保持一致。如果开发者决定继续使用 Payara 5 平台,那么我们建议迁移到 Payara 5 企业版。

Quarkus

在 Quarkus 2.8.0 发布一周后,红帽公司提供了一个维护版本,即 Quarkus 2.8.1.Final,带来了 Bug 修复和文档改进。要了解关于这个版本的更多细节,请查阅更新日志。

Apache Groovy

Apache软件基金会(ASF)提供了Apache Groovy和Apache TomEE的点版本。

Groovy 4.0.2发布,特性包括:初步支持 JDK 19;改进 Gradle 元数据,解决了groovy-all属性的一个问题;初步淘汰与 JEP-411(废弃并准备删除安全管理器)相关的安全策略文件;建议使用 JDK 18 或 JDK 19 的开发者在使用groovysh工具时,将环境变量JAVA_OPTS设置为-Djava.security.manager=allow。要了解更多细节,可以查看发布说明,或阅读这篇关于 Groovy 4.0(于 2022 年 1 月下旬发布)的更详细的报道。

TomEE 是经过 Jakarta EE 9.1 Web Profile 认证的应用服务器,其 8.0.11 版本也已经发布,特性包括 Bug 修复、依赖升级和改进,如用ASF Matomo替换 Google Analytics;解决 GitHub Actions 因目前自动生成材料清单而导致 PullRequest Builds 失败的问题;更新tomee.xml文件,使其在网站更新后能指向文档的正确位置。要了解更多细节,请查阅发布说明。

JobRunr

在JobRunr5.0发布后不到一个月,5.0.1 版本正式发布,其中包括 Bug 修复和一项改进,即作业成功后的仪表板日志将保留。这是对作业成功后元数据被清除的破坏性变化的回应。要了解更多细节,请查阅发布说明。

JReleaser

JReleaser的一个小更新发布,包括废弃GoFish软件包管理器,因为项目负责人已经关闭了贡献库。

目录
相关文章
|
13天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
43 2
|
2月前
|
Java API 数据库
构建RESTful API已经成为现代Web开发的标准做法之一。Spring Boot框架因其简洁的配置、快速的启动特性及丰富的功能集而备受开发者青睐。
【10月更文挑战第11天】本文介绍如何使用Spring Boot构建在线图书管理系统的RESTful API。通过创建Spring Boot项目,定义`Book`实体类、`BookRepository`接口和`BookService`服务类,最后实现`BookController`控制器来处理HTTP请求,展示了从基础环境搭建到API测试的完整过程。
48 4
|
2月前
|
Java API 数据库
如何使用Spring Boot构建RESTful API,以在线图书管理系统为例
【10月更文挑战第9天】本文介绍了如何使用Spring Boot构建RESTful API,以在线图书管理系统为例,从项目搭建、实体类定义、数据访问层创建、业务逻辑处理到RESTful API的实现,详细展示了每个步骤。通过Spring Boot的简洁配置和强大功能,开发者可以高效地开发出功能完备、易于维护的Web应用。
63 3
|
2月前
|
IDE Java API
基于Spring Boot REST API设计指南
【10月更文挑战第4天】 在现代的软件开发中,RESTful API已经成为了构建网络应用的标准之一。它通过HTTP协议提供了与资源交互的方式,使得不同的应用程序能够进行数据交互。Spring Boot作为一个功能强大的框架,它简化了配置和开发流程,成为了构建RESTful API的理想选择。本文将详细介绍如何在Spring Boot中设计和实现高质量的RESTful API,并提供一些最佳实践。
50 1
|
2月前
|
缓存 Java API
基于Spring Boot REST API设计指南
【10月更文挑战第11天】 在构建现代Web应用程序时,RESTful API已成为一种标准,使得不同的应用程序能够通过HTTP协议进行通信,实现资源的创建、读取、更新和删除等操作。Spring Boot作为一个功能强大的框架,能够轻松创建RESTful API。本文将详细介绍如何在Spring Boot中设计和实现高质量的RESTful API。
122 61
|
29天前
|
Java API 数据处理
探索Java中的Lambda表达式与Stream API
【10月更文挑战第22天】 在Java编程中,Lambda表达式和Stream API是两个强大的功能,它们极大地简化了代码的编写和提高了开发效率。本文将深入探讨这两个概念的基本用法、优势以及在实际项目中的应用案例,帮助读者更好地理解和运用这些现代Java特性。
|
2月前
|
机器学习/深度学习 算法 Java
通过 Java Vector API 利用 SIMD 的强大功能
通过 Java Vector API 利用 SIMD 的强大功能
47 10
|
2月前
|
API
阿里云短信平台API错误码提示错误天级流控显示小时级错误码
阿里云短信平台API错误码提示错误天级流控显示小时级错误码
|
2月前
|
分布式计算 Java 大数据
大数据-147 Apache Kudu 常用 Java API 增删改查
大数据-147 Apache Kudu 常用 Java API 增删改查
33 1
|
2月前
|
JavaScript API