HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

Java 近期新闻:新的 OpenJDK JEP、Payara 平台、Spring 和 Tomcat 更新、WildFly 28

  • 2023-05-11
    北京
  • 本文字数:4713 字

    阅读完需:约 15 分钟

Java近期新闻:新的OpenJDK JEP、Payara平台、Spring和Tomcat更新、WildFly 28

OpenJDK


JEP 446(作用域值预览)已经从 JEP Draft 8304357 状态提升Candidate 状态。该 JEP 就是之前的范围局部变量(第一轮孵化),是对 JDK 20 中发布的 JEP 429(作用域值第一轮孵化)的一个特性预览。该 JEP 建议在线程内部和线程之间共享不可变数据。这种方式比使用线程局部变量更好,特别是在大量使用虚拟线程时。

 

JEP 447(super()之前的语句)已经从 JEP Draft 8300786 状态提升Candidate 状态。在Amber项目的支持下,该 JEP 建议:如果语句不引用正在创建的实例,则可以出现在构造函数中的this()super()调用之前,并为构造函数保留现有的安全性和初始化保证。Gavin Bierman 是 Oracle 的技术咨询顾问,他已经向 Java 社区提供了该 JEP 的初始规范,以供评审和收集反馈。

 

JEP 448(向量API第六轮孵化)已从 JEP Draft 8305868 状态提升Candidate 状态。在Panama项目的支持下,该 JEP 融合了针对前五轮孵化反馈所做的增强:JEP 438,向量API第五轮孵化,在 JDK 20 中交付;JEP 426,向量API第四轮孵化,在 JDK 19 中交付;JEP 417,向量API第三轮孵化,在 JDK 18 中交付;JEP 414,向量API第二轮孵化,在 JDK 17 中交付;JEP 338,向量API第一轮孵化,在 JDK 16 中作为孵化器模块交付。该 JEP 建议增强向量 API,以便从 JEP 424(外部函数和内存API预览)定义的MemorySegment中加载向量以及向其中存储向量。

 

JEP 449(弃用Windows 32-bit x86平台支持)已经从 JEP Draft 8303167 状态提升Candidate 状态。该特性是由微软资深项目经理George Adams引入。该 JEP 建议弃用 Windows x86-32 位平台支持,并打算在未来的版本中删除这一支持。由于不打算在 32 位平台上实现 JEP 436(虚拟线程第二次预览),所以取消对该平台的支持将能够提升 OpenJDK 开发人员开发新特性的速度。

 

JEP Draft 8305968完整性和强封装)和 JEP Draft 8306275默认禁用代理动态加载)已经由 Oracle Loom 项目架构师和技术主管Ron Pressler提交

 

完整性和强封装建议默认启用强封装等各种特性,确保代码和数据的完整性。该草案的目标包括:让 Java 平台可以稳健地维护可维护性、安全性和性能所需的不变性;区分打破封装更方便的用例和必须禁用封装的用例。

 

默认禁用代理动态加载遵循完整性和强封装的方法,建议默认禁止将代理动态加载到正在运行的 JVM 中。该草案的目标包括:重新评估适用性和完整性之间的平衡;确保大多数不需要动态加载代理的工具不受影响。

 

JDK 任务控制(JMC) 8.3.1发布,带来了一些值得注意的修复,如:在 macOS 和 Linux 上安装插件后无法打开 JMX 控制台;在 Linux 上安装 JMC 插件后无法编辑 Eclipse 项目运行配置;无法在 jLinked 应用程序上执行运行记录。要了解关于该版本的更多细节,请查看发布说明

 

JDK 21


JDK 21早期访问构建Build 19在上周发布,其中包括Build 18的更新,主要是修复了各种问题。要了解关于这个版本的更多细节,请查看发布说明

 

对于JDK 21,我们鼓励开发人员通过Java Bug数据库报告 Bug。

 

JDK 20


Oracle 发布 2023 年 4 月的关键补丁更新,其中包括 JDK 20 的第一个维护版本JDK 20.0.1,以及JDK 17.0.7JDK 11.0.19JDK 8u371的安全更新。

 

BellSoft


与 Oracle 发布 2023 年 4 月的关键补丁更新(CPU)同时,BellSoft发布了其 OpenJDK 下游发行版Liberica JDK 17.0.6.0.1、11.0.18.0.1 和 8u371 版本的 CPU 补丁。此外,他们还发布了 20.0.1、17.0.7、11.0.19 和 8u372 版本的补丁集更新(PSU),其中包含 CPU 和非关键修复。

 

Spring Framework


Spring Boot 3.1.0 的第一个候选版本提供了一些值得注意的新特性:改进 Testcontainer 支持,包括开发阶段支持;支持 Docker Compose;增强 SSL 配置;改进 Docker 镜像构建。要了解关于该版本的更多细节,请查看发布说明

 

Spring Boot 3.0.6 的发布主要解决了 CVE-2023-20873 漏洞:在Cloud Foundry上利用通配符模式匹配进行安全绕过。该漏洞使得部署到Spring Cloud for Cloud Foundry的应用程序容易受到安全绕过的影响。除了文档改进和依赖项升级,该版本还提供了一些值得注意的 Bug 修复,如:Spring Cloud for Cloud Foundry 集成没有使用端点路径映射;ApplicationAvailability bean 是自动配置的,即使已经存在自定义 bean;Apache Cassandra 中的默认配置替换不能解析来自spring.data.cassandra属性文件的配置。要了解关于该版本的更多细节,请查看发布说明

 

同样,Spring Boot 2.7.11 的发布也是为了解决了上面提到的 CVE-2023-20873 漏洞,并提供了文档方面的改进、依赖项升级和与 Spring Boot 3.0.6 相同的 Bug 修复。要了解关于该版本的更多细节,请查看发布说明

 

Spring Security的 6.1.0-RC1、6.0.3、5.8.3 和 5.7.8 版本发布,主要用于解决 CVE-2023-20862 漏洞:空的SecurityContext在注销时未正确保存。该漏洞使得序列化版本的注销不能正确地清除安全上下文,并且无法显式地将空的安全上下文保存到HttpSessionSecurityContextRepository 类。这将导致用户在注销之后仍然处于身份已验证状态。要了解关于这些版本的更多细节,请查看6.1.0-RC16.0.35.8.35.7.8的发布说明。

 

Spring Session 3.1.0 的第一个候选版本提供了依赖项升级和一个新特性,即重用StringRedisSerializer类的实例,从而消除了实例化其他序列化器实例的需要。要了解关于该版本的更多细节,请查看发布说明

 

Spring Authorization Server 1.1.0 的第一个候选版本提供了依赖项升级和新特性,包括:在JdbcOAuth2AuthorizationService类中支持设备代码和用户代码;改进OAuth 2.0 Device Authorization Grant,包括添加测试和参考文档;改进 OpenID Connect 1.0 注销端点。要了解关于该版本的更多细节,请查看发布说明

 

同样,Spring Authorization Server 的 1.0.2 和 0.4.2 版本也发布了,带来了依赖项升级和一些值得注意的 Bug 修复:将不正确的INVALID_CLIENT令牌错误代码返回给正确的INVALID_GRANT令牌错误代码;坏掉的支持链接;认证密钥应该在客户端注册时编码保存;考虑允许在重定向 URI 中使用localhost。要了解关于这些版本的更多细节,请查看1.0.20.4.2版本的发布说明。

 

Spring Integration的 6.1.0-RC1 和 6.0.5 版本发布,它们有一些值得注意的变化,包括:删除了IntegrationWebSocketContainer类中的尾随空格;改进了BaseWsInboundGatewaySpecTailAdapterSpec类,它们没有覆盖super方法,并且由于target字段未填充而抛出NullPointerException实例。要了解关于这些版本的更多细节,请查看6.1.0-RC16.0.5版本的发布说明。

 

Spring for GraphQL 1.2.0 的第一个候选版本提供了以下新特性:更新SchemaMappingInspector类以支持Connection类型;利用 Querydsl 和 Query By Example 支持分页;对分页和排序的全面支持。要了解关于该版本的更多细节,请查看发布说明

 

Spring Shell的 3.1.0-M2、3.0.2 和 2.1.8 版本发布,带来了一些值得注意的变化,包括:分别基于 Spring Boot 3.1.0-M2、3.0.5 和 2.7.10 构建;Bug 修复反向移植;对使用位置参数的自定义类型处理进行了重要修复。要了解关于这些版本的更多细节,请查看3.1.0-M23.0.22.1.8版本的发布说明。

 

WildFly


Red Hat发布了 WildFly 28,改进了对可观察性的支持,并完全支持 Jakarta EE 10。WildFly 增加了对MicrometerMicroProfile Telemetry规范的支持,但取消了对MicroProfile Metrics的支持。Red Hat 建议在生产应用程序中使用 JDK 17,但是他们也看到,在 JDK 20 上的效果也不错。要了解关于该版本的更多细节,请查看发布说明,InfoQ 后续也会带来更详细的新闻报道。

 

Payara


Payara发布了 2023 年 4 月版的Payara平台,其中包括社区版 6.2023.4、企业版 6.1.0 和企业版 5.50.0。

 

社区版 6.2023.4 提供的新特性包括:修复了使用 JDK17 和 Records 时的 Payara 6 部署错误;改进了应用程序部署描述符和全局 HTTP 网络监听器中的SameSite cookie 属性;依赖项升级到 EclipseLink 4.0.1、EclipseLink ASM 9.4.0、Hazelcast 5.2.2 和 ASM 9.4。要了解关于该版本的更多细节,请查看发布说明

 

类似地,企业版 6.1.0 的新特性也包括:修复了使用 JDK17 和 Records 时的 Payara 6 部署错误;改进了应用程序部署描述符中的SameSite cookie 属性;依赖项升级到 EclipseLink 4.0.1、 EclipseLink ASM 9.4.0、Hazelcast 5.2.2 和 ASM 9.4。要了解关于该版本的更多细节,请查看发布说明

 

企业版 5.50.0 还附带了以下特性:解决CVE-2023-24998漏洞。这是Apache Commons FileUpload中的一个漏洞,由于未对已处理请求部分的数量做限制,所以攻击者可以通过恶意上传触发拒绝服务;修复 Hazelcast NoDataMemberInClusterException ;改进应用程序部署描述符中的SameSite cookie 属性;依赖项升级到 Hazelcast 5.2.2。要了解关于该版本的更多细节,请查看发布说明

 

Open Liberty


IBM发布了 Open Liberty 23.0.0.4-beta 版,更新了对Jakarta Data规范的支持,开发人员现在可以组合使用多种方式指定排序和分类,定义优先级。首先应用由@OrderBy注解或按方法查询关键字定义的排序,然后应用方法或Pageable接口上Sort记录中的参数。

 

Micronaut


Micronaut 基金会发布了 Micronaut Framework 3.9.0,带来了以下新特性:允许自定义包,使用@Introspected注解的targetPackage字段编写自省;通过@CrossOrigin注解启用跨域资源共享(CORS)配置;一个破坏性更改,为了防止意外暴露用户的 API,配置属性micronaut.server.cors.*.configurations.allowed-origins不支持正则表达式;模块更新,包括:Micronaut KubernetesMicronaut SecurityMicronaut CRaCMicronaut MavenMicronaut Launch。要了解关于该版本的更多细节,请查看发布说明

 

Apache 软件基金会


Apache Tomcat 团队发布了11.0.0-M510.1.89.0.748.5.88的点版本。四个版本都有的显著变化包括:将maxParameterCount的默认值从 10000 减少到 1000;修正了Bug 66442修复中的回归,即没有响应体的流在完成时不会减少活动流计数,导致某些连接出现ERR_HTTP2_SERVER_REFUSED_STREAM;实现 RFC 9239,更新ECMAScript媒体类型,其中 JavaScript 的 MIME 类型更改为text/javaScript。要了解关于这些版本的更多细节,请查看11.0.0-M510.1.89.0.748.5.88版本的发布说明。

 

Ktor


JetBrains发布Ktor 2.3.0,这是一个用于创建微服务和 Web 应用程序的异步框架。该版本带来了一些改进和修复,包括:支持在定义路由时使用正则表达式;放弃支持将在 Kotlin 1.9.0(即将发布)中删除的遗留 JS 编译器;支持 Apache 5 和 Jetty 11;支持套接字的结构化并发性。要了解关于该版本的更多细节,请查看发布说明

 

JHipster


JHipster 团队发布JHipster Lite 0.32.0,其中有许多依赖项升级,并带来了一些显著的变化,如:通过将spring.jpa.properties.hibernate.cache.use_second_level_cache属性设置为true来支持 Hibernate 二级缓存;删除执行npm run lint命令时不必要的警告;删除运行npm t命令时不必要的堆栈跟踪信息。要了解关于该版本的更多细节,请查看发布说明

 

JBang


JBang 0.106.3发布,修复了 ChatGPT 在坏键或使用限制上出错的问题。

 

Gradle


Gradle 8.1.1发布,修复了一些 Bug,包括:当探测一个在配置缓存中存储了大量 lambdas 的类时,会出现MethodTooLargeException;使用 Gradle 8.1 构建的 Kotlin DSL 预编译脚本插件不能与 Gradle 的其他版本一起使用;Gradle 8.1 在buildSrc中为 Kotlin 配置的freeCompilerArgs方法会破坏构建,提供无用的错误信息。要了解关于该版本的更多细节,请查看发布说明

 

原文链接:

https://www.infoq.com/news/2023/04/java-news-roundup-apr17-2023/


相关阅读:

Java 近期新闻:JEP for JDK 21、MicroStream 成为 Eclipse 项目、Helidon、Piranha、Gradle 8.1

Java 近期新闻:字符串模板、Quarkus、Open Liberty、PrimeFaces、JobRunr、Devnexus 2023

2023-05-11 08:0016804

评论

发布
暂无评论
发现更多内容

OpenHarmony应用开发之自定义弹窗

OpenHarmony开发者

OpenHarmony

智能可观测性如何赋能智能汽车主机厂

博睿数据

可观测性 汽车 博睿数据

macos平台推荐 Infuse for Mac(音视频播放器) 最新中文

mac大玩家j

Mac软件 视频播放器 多媒体播放

前端模块化技术发展的趋势

Onegun

前端 模块化 小程序化

性能调优建议与技巧

NGINX开源社区

研发挑战的本原

iSoftBook

研发团队 研发效能管理 研发管理软件 研发管理平台 敏捷方法

KaiwuDB 携手 IoT 领域合作伙伴发布“1+X”工业互联网联合解决方案

KaiwuDB

IoT KaiwuDB

官宣!玖章算术获评“浙江省创新型中小企业”

NineData

数据管理 玖章算术 NineData 创新型中小企业 2023年

苹果mac电脑版DxO PhotoLab 6 激活中文版

胖墩儿不胖y

图像编辑 Mac软件 图像处理工具 raw图像处理

第四代英特尔至强驱动创新,加速企业多元化业务应用落地

E科讯

跨越2000公里,15岁少年的云上逐梦

华为云开发者联盟

开发者 华为云 华为云开发者联盟 企业号9月PK榜

比sentry还要香的监控系统

Yestodorrow

可观测性

KaiwuDB 受邀亮相 2023 中国国际“软博会”

KaiwuDB

KaiwuDB 软博会

直播系统源码部署,高效文件管理与传输的FTP协议

山东布谷科技

软件开发 ftp 直播系统源码 文件传输协议 媒体文件

Programming abstractions in C阅读笔记:p144-p160

codists

c

通过 SQL 实现海量 GIS 数据的轨迹关联计算,确定不了解下?

YMatrix 超融合数据库

GIS sql 超融合数据库 YMatrix 轨迹关联计算

阿里云Elasticsearch Serverless 全新发布,平均可省50%成本

阿里云大数据AI技术

阿里云 开源

OpenSSL 3.0.0 设计(五)|遗留问题、遗留 Provider 模块、ENGINE API

铜锁开源密码库

翻译 密码学 密码学和算法 openssl 铜锁

HarmonyOS实现静态与动态数据可视化图表

HarmonyOS开发者

HarmonyOS

企业采用生成式AI的三大挑战:可信性、隐私保护、偏见消除

技术咖和技术渣

人工智能 生成式AI

阿里十年总结之软件测试的价值

阿里技术

软件测试 质量

LRTimelapse for Mac(延时摄影视频制作工具) 6.5.2中文汉化版

mac

苹果mac Windows软件 lrTimelapse 延时摄影视频制作软件

蓝易云:Linux系统上怎么安装和使用exa?

百度搜索:蓝易云

云计算 Linux 运维 云服务器 exa

蓝易云:Nginx启动,重启以及基本命令详解!

百度搜索:蓝易云

nginx 云计算 Linux 运维 Web

Java近期新闻:新的OpenJDK JEP、Payara平台、Spring和Tomcat更新、WildFly 28_编程语言_Michael Redlich_InfoQ精选文章