AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

Java 近期新闻:OpenJDK 更新、JDK 20 发布计划、GraalVM 22.3、JReleaser 1.3.0

  • 2022-11-10
    北京
  • 本文字数:2665 字

    阅读完需:约 9 分钟

Java近期新闻:OpenJDK更新、JDK 20发布计划、GraalVM 22.3、JReleaser 1.3.0

OpenJDK


JEP 434,即外部函数和内存API(第二次预览),在过去的一周从 Draft 8293649进入到 Candidate 状态。这个 JEP 在Panama项目中从前到后的演化路径:JEP 424,即外部函数和内存API(预览),在 JDK 19 中交付;JEP 419,即外部函数和内存API(第二轮孵化器),在 JDK 18 中交付;JEP 412,即外部函数和内存API(孵化器),在 JDK 17 中交付。这个 JEP 提议结合基于反馈所做出的改进在 JDK 20 中进行第二次预览。更新包括:统一了MemorySegmentMemoryAddress接口,也就是说,内存地址由零长度的内存段组成;MemoryLayout封印接口得到增强,方便与 JEP 427(switch中的模式匹配(第三次预览))结合使用。


JEP Draft 8295817,即虚拟线程(第二次预览),在过去的一周已经进入到 Submitted 状态。这个 JEP 属于Loom项目,提议对 JEP 425(在 JDK 19 中交付的虚拟线程(预览))进行第二次预览,争取为这个特性的演进获得更多额外的反馈和经验。需要注意的是,除了一小部分来自 JEP 425 的 API 在 JDK 19 中成为永久 API(因此不在第二次预览中提出)之外,本次预览没有其他的变更。


类似地,JEP Draft 8296037,即结构化并发(第二轮孵化器),已经进入到 Submitted 状态。这个 JEP 也属于 Loom 项目,它提议对 JEP 428(结构化并发(孵化器),在 JDK 19 中交付)进行二次孵化,并在 JDK 20 中交付,争取为这个特性的演进获得更多额外的反馈和经验。唯一的变化是更新了StructuredTaskScope类,用以支持在任务作用域中创建的线程继承作用域值。这简化了跨线程共享不可变数据的过程。

JDK 20


JDK 20早期访问版本Build 21也在上周发布了,其中包括对各种问题的修复。关于这个版本的更多细节可以在发布说明中找到。


Oracle Java 平台组首席架构师Mark Reinhold正式宣布JDK 20 的发布计划如下:


  • Rampdown Phase One(从主线分叉):2022 年 12 月 8 日;

  • Rampdown Phase Two:2023 年 1 月 19 日;

  • Initial Release Candidate:2023 年 2 月 9 日;

  • Final Release Candidate:2023 年 2 月 23 日;

  • General Availability:2023 年 3 月 21 日。


对于JDK 20,开发者可以向Java Bug数据库报告 Bug。

Loom 项目


Loom 项目早期访问版本的 Build 20-loom+20-34 已经对 Java 社区可用,并且是基于 JDK 20 早期访问版本Build 20构建的。

Spring Framework


在通往Spring Integration 6.0.0 的道路上,第一个候选版本的特性包括:RabbitMQ Streams、Kotlin 协程和 GraalVM 多语言 JavaScript 调用。这个版本还移除了Spring Data for Apache Geode。关于这个版本的更多细节可以在发布说明中找到。


面向 Eclipse、Visual Studio Code 和 Theia 的 Spring Tools 4.16.1 已经发布,为 Eclipse 2022-12 里程碑版本提供了 Spring Tools 4 的早期访问版本。由于 Eclipse 2022-09 附带了 m2e 2.0 的一个主要更新,因此打算从 Spring Tools 4.15.3 开始升级的开发人员需要遵循这个迁移指南。关于这个版本的更多细节可以在版本说明中找到。

GraalVM


Oracle Labs发布了 GraalVM 22.3:支持 JDK 19 和 jlink;原生镜像监控和开发者体验方面的更新。正如在 JavaOne 上宣布的那样,GraalVM CE Java 代码将成为 OpenJDK 的一部分。这是 2022 年的最后一个特性版本。关于这个版本的更多细节可以在发布说明和这个 YouTube视频中找到。InfoQ 随后将提供更详细的新闻报道。

Open Liberty


IBM 将 Open Liberty 22.0.0.11 从Beta提升为交付版本:支持 JDK 19 和分布式安全缓存,多个 Liberty 服务器可以通过使用 JCache 提供程序来共享缓存。这个版本还解决了由nokogiri (现已不存在的 org.cyberneko.html 的一个分支)引发的CVE-2022-24839漏洞,在解析格式不正确的 HTML 标记时会抛出OutOfMemoryError异常。


Open Liberty 22.0.0.12-beta 版本也发布了,提供了对六个新的 Jakarta EE 10 规范的支持:Jakarta Batch 2.1Jakarta XML Web Services 4.0Jakarta Server Pages 3.1Jakarta Standard Tag Library 3.0Jakarta Messaging 3.1Jakarta WebSocket 2.1。在即将发布的 MicroProfile 6.0 中还支持两个更新的规范:JWT Propagation 2.1MicroProfile Metrics 5.0

Eclipse Vert.x


Eclipse Vert.x 3.9.14 版本已经发布,包含了依赖项升级:GraphQL Java 19.2、Netty 4.1.84.Final、Protocol Buffers Java 3.21.7 和Jackson Databind(解决了CVE-2022-42003漏洞,即 Jackson Databind 中的拒绝服务漏洞)。3.9 版本系列的生命周期计划在 2022 年底结束,因此建议开发人员升级到 Vert.x 4.x 版本。关于这个版本的更多细节可以在版本说明中找到。

Apache 软件基金会


Apache TomEE 8.0.13 已经发布,特性包括:一个关于如何使用属性提供程序的示例;依赖升级——Jakarta Faces 2.3.18、MyFaces 2.3.10、Hibernate Integration 5.6.9.Final、BatchEE 1.0.2、Tomcat 9.0.68 和 SnakeYAML 1.33。关于这个版本的更多细节可以在发布说明中找到。

JReleaser


JReleaser是一个简化创建项目发布的 Java 辅助工具,它的 1.3.0 版本已经可用,特性包括:一个新的 WorkflowListener 扩展,可以对工作流事件做出反应;增加安装原生镜像组件的选项;支持将 JAR 和 POM 部署到 Maven 兼容的存储库中。关于这个版本的更多细节可以在更新日志中找到。

Hibernate


5.11.11.Final 和 5.10.13.Final 版本的Hibernate Search已经发布,包括依赖项升级:分别是Hibernate ORM 5.4.33.Final 和 5.3.28.Final。5.10.13 版本还修复了在 Spring Boot 2.4.0+和 Spring Framework 5.3+中用EntityManager接口创建FullTextSession时抛出的ClassCastException

PrimeFaces


开源 UI 组件库实现PrimeFaces已经发布7.0.308.0.2210.0.1711.0.912.0.1单点版本。新特性和增强包括:为JpaLazyDataModel类实现一个 IN 匹配模式,即 filterMatchMode="in";确保在使用SelectCheckboxMenu类时,emptyLabel 属性不显示文本。


发布的 PrimeVue 3.18.0 还提供了这些特性:对所有菜单组件的可访问性增强;FileUpload的模板支持;响应式Paginator。关于这个版本的更多细节可以在更新日志中找到。

JDKMon


JDKMon是一个监控和更新已安装 JDK 的工具,它的17.0.37版本已经在上周对 Java 社区可用。这个工具由 Azul 首席工程师Gerrit Grunwald创建,新版本修复了一个检测 GraalVM 构建的问题。

EclipseCon


EclipseCon 2022于上周在德国路德维希堡的Schlosspark论坛上举行,来自 Java 社区的演讲嘉宾探讨了 Java、开源方式、云原生技术以及质量和安全方面的话题。大会也包含了年度社区日


原文链接

https://www.infoq.com/news/2022/10/java-news-roundup-oct24-2022/


相关阅读:

Java 近期新闻:JEP 更新,GraalVM 贡献给 OpenJDK,JavaOne 重启

用现代 Java 调整经典设计模式

Error Prone 通过检测常见错误帮助改善 Java 代码

2022-11-10 08:009097

评论

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

大数据中流量分析常见分类

大数据技术指南

大数据 28天写作 3月日更

工作多年后我更明白了UT的重要性

好好学习,天天向上

《青春有你3》的子弹时间舞台,凝筑了自由视角技术进化史

脑极体

FISCO BCOS 开发环境节点搭建 | 联盟链开发(一)

李大狗

区块链 联盟链 FISCO BCOS 狗哥

架构 idea

型火🔥

架构 原则 架构之道

科技强国的使命召唤中,百度AI埋下三根未来“引线”

脑极体

Docker 教程(三):Docker 命令

看山

Docker

产品训练营第八周作业——用户路径地图

innovator琳

用户研究 用户地图 用户数据 用户模型

IO 模型

无心

Netty

控制台的安装与使用 | 联盟链开发(二)

李大狗

联盟链 FISCO BCOS 狗哥

探索 Snabbdom 模块系统原理

Geek_z9ygea

JavaScript Vue Web Vue 3 Snabbdom

架构师训练营 4 期 第12周

引花眠

架构师训练营 4 期

为何数字人民币要采用“小额匿名、大额可溯”的设计?

CECBC

数字货币

谈兼职创业

Ryan Zheng

领域驱动设计101 - 通用语言

luojiahu

领域驱动设计 DDD

Java8中的 Stream 那么彪悍,你知道它的原理是什么吗?

Java小咖秀

Java 面试 stream java8 开发

Vue3源码 | createApp都干了什么?

梁龙先森

源码分析 大前端 Vue3

2021十大区块链领域即将起飞

CECBC

区块链 投资

【LeetCode】矩阵置零Java题解

Albert

算法 LeetCode 28天写作 3月日更

Go Channel源码分析

非晓为骁

源码分析 channel Go 语言

一文搞定Diff算法

执鸢者

Vue 大前端 Diff

央行数字人民币“可控匿名”会侵犯隐私吗?最新解读来了

CECBC

数字货币

从Nacos客户端视角来分析配置中心原理

麦洛

nacos SpringCloud Alibaba 动态配置

Spark详细剖析

五分钟学大数据

大数据 spark 28天写作 3月日更

2.3 Go语言从入门到精通:数据类型

xcbeyond

3月日更 Go 语言

产品训练营第八章作业

Arnold

数据仓库设计

大数据技术指南

大数据 28天写作 3月日更

在离开新手村后,你该如何的走出呢?打造属于你的快与慢的能力。

叶小鍵

OpenCV 写图像也有讲究,取经之路第 5 天

梦想橡皮擦

28天写作 3月日更

银行业只是开始,60个可以被区块链改变的行业

CECBC

数字技术

hive数据倾斜解决办法

五分钟学大数据

大数据 hive 28天写作 3月日更

Java近期新闻:OpenJDK更新、JDK 20发布计划、GraalVM 22.3、JReleaser 1.3.0_编程语言_Michael Redlich_InfoQ精选文章