网易首页 > 网易号 > 正文 申请入驻

Java近期新闻:OpenJDK JEP、Spring 7.0开发计划、JobRunr 7.3、Keycloak 26.0

0
分享至

作者 | Michael Redlich

译者 | 明知山

策划 | 丁晓昀

OpenJDK

经过评审,JEP 475(G1 延迟屏障扩展)从 Proposed to Target 进入到 Targeted 状态,计划在 JDK 24 中发布。该 JEP 建议将 G1 垃圾收集器的屏障扩展从 C2 JIT 编译器的早期阶段推迟到后期阶段,以此来简化 G1 垃圾收集器屏障的实现。这些屏障记录了有关应用程序内存访问的信息。目标是在使用 G1 收集器时减少 C2 的执行时间。

在从 JEP Draft 8340841 进入到候选状态两天后,JEP 489(向量 API(第九次孵化))进一步从候选进入到提议目标状态,并计划在 JDK 24 中发布。这个 JEP 在前八次孵化的基础上进行了增强,这八次孵化分别是:在 JDK 23 中交付的 JEP 469(向量 API(第八次孵化));在 JDK 22 中交付的 JEP 460(向量 API(第七次孵化));在 JDK 21 中交付的 JEP 448(向量 API(第六次孵化));在 JDK 20 中交付的 JEP 438(向量 API(第五次孵化));在 JDK 19 中交付的 JEP 426(向量 API(第四次孵化));在 JDK 18 中交付的 JEP 417(向量 API(第三次孵化));在 JDK 17 中交付的 JEP 414(向量 API(第二次孵化));以及在 JDK 16 中作为孵化模块交付的 JEP 338(向量 API(孵化器))。最初考虑通过重用原始的 Incubator 状态进行再次孵化,但最终决定继续使用编号。向量 API 将继续孵化,直到 Project Valhalla 的关键特性预览可用。到那时,向量 API 团队将调整向量 API 及其实现,并将向量 API 从 Incubation 提升到 Preview。评审在 2024 年 10 月 9 日结束。

JEP 484(类文件 API)从 Candidate 进入到 Proposed to Target 状态,并计划在 JDK 24 中发布。这个 JEP 提议在经过了两轮预览后,在 JDK 24 中最终确定这个特性,这两轮预览分别是:在 JDK 23 中交付的 JEP 466(类文件 API(第二次预览))和在 JDK 22 中交付的 JEP 457(类文件 API(预览))。这个特性提供了一个用于解析、生成和转换 Java 类文件的 API,最初作为 ASM(ASM 是 Java 字节码操作和分析框架)的内部替代品,在 JDK 中使用,现在计划将其作为公共 API 开放。Goetz 将 ASM 描述为“一个有很多遗留包袱的旧代码库”,并提供了关于这个特性将如何发展并最终取代 ASM 的相关背景信息。评审在 2024 年 10 月 8 日结束。

JEP 492(灵活的构造函数体(第三次预览))从 JEP Draft 8338287 进入到 Candidate 状态。这个 JEP 提议进行第三轮预览,相较于前两轮,变化不大,目的是为了收集更多的经验和反馈。前面两轮预览分别是:在 JDK 23 中交付的 JEP 482(灵活的构造函数体(第二次预览))以及在 JDK 22 中交付的 JEP 447(super() 的前置语句(预览))。这个特性允许在构造函数中的 this() 或 super() 调用之前执行不引用正在创建的实例的语句,并保留构造函数现有的安全性和初始化保证。这个 JEP 的变更包括:对局部类的处理;放宽字段在显式构造函数调用之前不能访问的限制,改为字段在显式构造函数调用之前不能读取的要求。Oracle 的技术顾问 Gavin Bierman 为 Java 社区提供了这个 JEP 的初始规范供评审和反馈。

JEP 491(不固定虚拟线程同步)从 JEP Draft 8337395 进入到 Candidate 状态。这个 JEP 提议:

通过允许在同步方法和语句中阻塞的虚拟线程释放底层平台线程,以便其他虚拟线程能够使用这些线程,从而提高 Java 代码在使用同步方法和语句时的可扩展性。这一改进将显著减少虚拟线程被固定到特定平台线程的情况,这种固定严重限制了能够用于处理应用程序工作负载的虚拟线程数量。

JEP 488(模式、instanceof 和 switch 中的原始类型(第二次预览))从 JEP Draft 8335876 进入到 Candidate 状态。这个 JEP 由 Project Amber 提供支持,提议进行第二轮预览,与上一轮或预览相比没有变化,目的是获得更多的反馈。上一轮预览是在 JDK 23 中交付的 JEP 455(模式、instanceof 和 switch 中的原始类型(预览))。这个特性允许在所有模式上下文中使用原始类型模式,并扩展 instanceof 和 switch,可以使用所有原始类型,以此来增强模式匹配。更多细节可以在 Oracle 技术顾问 Aggelos Biboudis 提供的草稿规范中找到。

JEP 487(作用域值(第四次预览))已经从 JEP Draft 8338456 进入到 Candidate 状态。这个 JEP 提议进行第四次预览,其中包含了一个变化,目的是为了获得更多的反馈。之前的一轮孵化和三轮预览分别是:在 JDK 23 中交付的 JEP 481(作用域值(第三次预览));在 JDK 22 中交付的 JEP 464(作用域值(第二次预览));在 JDK 21 中交付的 JEP 446(作用域值(预览));以及在 JDK 20 中交付的 JEP 429(作用域值(孵化器))。这个特性之前叫作作用域本地变量(孵化器),允许在线程内部和跨线程共享不可变数据。这比线程本地变量更受欢迎,尤其是在处理大量虚拟线程的场景下。

JEP 14(库开发尖端与尾部模型)是一个新的 JEP,旨在将自 2018 年起与 OpenJDK 发布实践相结合的“尖端和尾部”发布模型正式化。“尖端”指的是六个月一次的 OpenJDK 发布周期,而“尾部”指的是每季度的关键补丁更新,分别在每年的一月、四月、七月和十月发布。该 JEP 的目的是减少从“尖端”到“尾部”的回溯工作,以便改进维护流程。鼓励 Java 库的维护者采用“尖端和尾部”发布模型。

JDK 24

JDK 24 早期访问构建版本 Build 18 已发布,包含了从 Build 17 以来的更新,修复了各种问题。有关这个版本的更多细节可以在发布说明中找到。

对于 JDK 24,开发者可以通过 Java Bug 数据库报告错误。

GlassFish

GlassFish 7.0.18(第十八个维护版本)包含了错误修复、文档改进和新特性,例如:能够从命令行启动 GlassFish Embedded Server;能够在不需要重启服务器的情况下通过新的 GlassfishUrlClassLoader 类动态更新公共类加载器。有关这个版本的更多细节可以在发布说明中找到。

GraalVM

Oracle Labs GraalVM 团队研发负责人 Fabio Niephaus 宣布 ,他们发布了一个新的 GitHub 仓库,包含了 GraalPy、GraalJS 和 GraalWasm 项目的新演示和指南。这个仓库与最近发布的 GraalVM for JDK 23 保持一致,在这个版本中,GraalPy 和 GraalWasm 已经是稳定版,适合用于处理生产环境的工作负载。

TornadoVM

TornadoVM 1.0.8(第八个维护版本)包含了错误修复和改进,例如:在 TornadoExecutionPlan 封印类中定义了新的方法 printTraceExecutionPlan() 和 getTraceExecutionPlan(),用于记录和转储 TornadoVM 执行计划的操作;移除了在 PowerMetric 接口中定义的 getHandleByIndex(),因为它调研了内部的底层能力,而这些不需要在设备上下文中暴露出来;基准测试的小幅改进。有关这个版本的更多细节可以在发布说明中找到。

Spring Framework

随着 Spring Framework 6.2 即将在 2024 年 11 月发布,Spring 团队已经在为预定于 2025 年 11 月发布的 Spring Framework 7.0 制定计划。正如所述:

我们将把基线升级到 Jakarta EE 11(Tomcat 11、Hibernate ORM 7、Hibernate Validator 9),拥抱即将到来的 JDK 25 LTS,同时与 Java 生态系统保持一致,维持 JDK 17 作为基线。对于 Kotlin 应用程序,我们打算基于 Kotlin 2 来支持 Spring Framework 7。

团队还计划使用 JSpecify 注解来实现空值安全策略。有关 JSpecify 的更多细节可以在这篇 InfoQ 新闻报道中找到。

Helidon

Helidon 4.1.2 包含了依赖项升级和一些显著的变化,例如:改进了 WebServer 组件的服务器端事件(SSE)实现;在 DataReader 类的 findNewLine() 方法中添加了必要的验证逻辑,确保内部索引始终在界限内。关于这个版本的更多细节可以在变更日志中找到。

同样地,Helidon 3.2.10 也包含了依赖项升级和一些重要的改进。其中包括:在 HTTP 连接空闲超过五分钟后自动关闭连接;在 WebServer 组件中,用套接字配置取代了原有的服务器配置。关于这个版本的更多细节可以在更新日志中找到。

JobRunr

JobRunr 7.3.0 和 JobRunr Pro 已经发布,新特性包括:与 Quarkus 3.15 和 Kotlin 2.0.20 完全兼容;在 BackgroundJobServer 类中增强了线程安全性;能够通过属性设置来调整 BackgroundJobServerConfiguration 类中定义的 serverTimeoutPollIntervalMultiplicand 属性。关于这个版本的更多细节可以在发布说明中找到。

Hibernate

Hibernate Reactive 发布 2.4.2.Final 版本,解决了以下问题:在检索带有 Jakarta Persistence @IdClass 注解的复合表实体时出现的 ClassCastException;数据库中不正确映射的嵌入式 JSON 值。关于这个版本的更多细节可以在发布说明中找到。

Micrometer

Micrometer Metrics 1.13.5 包含了依赖项升级,并解决了由于 Keycloak 服务器实例无法启动而导致的 ConcurrentModificationException,以及在已经注册了指标后允许配置 MeterFilter 接口。关于这个版本的更多细节可以在发布说明中找到。

Grails

Grails 6.2.1 包含了错误修复、依赖项升级和一些显著的变化,例如:与 Groovy 3.0.22 兼容;能够自定义 ErrorsViewStackTracePrinter 类的级联样式表中的类。关于这个版本的更多细节可以在发布说明中找到。

Infinispan

Infinispan 15.1.0.Dev04 和 15.0.10.Final 包含了依赖项升级和一些显著的变化,包括对 Redis Serialization Protocol(RESP) 操作的增强,确保序列化都以 RESP3 格式返回响应;消除了由于 SimpleCacheImpl 类中的 get() 方法处理内存到期并返回 CompletableFuture 类实例而导致的死锁。关于这些版本的更多细节可以在 15.1.0.Dev04 和 15.0.10.Final 的发布说明中找到。

Keycloak

Keycloak 26.0.0 发布,新特性包括:其专有库(Java 管理客户端、Java 授权客户端、Java 策略执行器)的发布周期与 Keycloak 发布周期独立;用户会话现在默认是持久化的;新的默认登录主题;OpenTelemetry 跟踪功能预览。关于这个版本的更多细节可以在发布说明中找到。InfoQ 将跟进更详细的新闻报道。

Testcontainers for Java

Testcontainers for Java 1.20.2 包含了错误修复、文档改进、依赖项升级以及新特性 / 增强,例如:实现了 MongoDB Atlas;新的模块支持 Databend 和 Timeplus;对 Cassandra 模块的增强,消除了运行时异常。关于这个版本的更多细节可以在发布说明中找到。

RefactorFirst

Improving(一家提供培训、咨询、招聘和项目服务的 IT 服务公司)软件顾问 Jim Bethancourt 发布 RefactorFirst 0.6.1 和 0.6.0,这是一款用于识别应用程序中需要进行重构的组件的工具。这些版本提供了:只有在 showDetails 属性设置为 true 时才计算循环中类的提交计数平均值的变化,因为这一计数与循环中涉及的类的数量有很强的相关性;从报告模块中移除了 JGraphT 模块 jgrapht-core 和 jgapht-ext,因为它们对 JGraphX Swing 组件有传递性依赖;解决了 CVE-2017-18197,该漏洞导致 mxGraphViewImageReader 类容易受到 XML 外部实体(XXE)攻击。关于这些版本的更多细节可以在 0.6.1 和 0.6.0 的发布说明中找到。

Debezium

距离开源分布式平台 Debezium 2.0.0.Final 发布将近两年,Debezium 3.0.0.Final 发布,新特性包括:将 JDK 17 作为最低版本;支持 Kafka 3.8.0;移除了弃用的增量信号字段 additional-condition;增加了每个数据库表的详细指标。所有受支持的数据库连接器也进行了更新。关于这个版本的更多细节可以在发布说明中找到。InfoQ 将跟进更详细的新闻报道。

查看英文原文:

https://www.infoq.com/news/2024/10/java-news-roundup-sep30-2024/

声明:本文由 InfoQ 翻译,未经许可禁止转载。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
25岁斩获西甲金靴,26岁却被马竞清洗,神射手射术之外太过平庸

25岁斩获西甲金靴,26岁却被马竞清洗,神射手射术之外太过平庸

足篮大世界
2026-04-30 18:09:29
印度裔司机闯停牌致16人死亡,遣返前最后一刻被法院叫停:称回国或自杀

印度裔司机闯停牌致16人死亡,遣返前最后一刻被法院叫停:称回国或自杀

华人生活网
2026-04-30 04:47:43
一个出轨男人的真实记录:和熟人发生婚外情,源于过年家族聚会

一个出轨男人的真实记录:和熟人发生婚外情,源于过年家族聚会

赵主任趣闻
2026-05-01 05:09:45
伊朗地铁广告:特朗普跪地给伊朗送钱,靠的是霍尔木兹

伊朗地铁广告:特朗普跪地给伊朗送钱,靠的是霍尔木兹

桂系007
2026-05-01 06:41:56
41岁C罗狂批沙特联赛:有些队享有特权 我将在赛季末说出很多实情

41岁C罗狂批沙特联赛:有些队享有特权 我将在赛季末说出很多实情

风过乡
2026-05-01 05:09:23
男子强奸大嫂刺死见义勇为者,死者家属向女方索赔!律师分析

男子强奸大嫂刺死见义勇为者,死者家属向女方索赔!律师分析

南方都市报
2026-04-29 18:40:11
罗马诺丨米兰正在全力推动

罗马诺丨米兰正在全力推动

米兰圈
2026-05-01 09:30:42
全红婵爸爸为啥要一次性买500吨糖?原因曝光,全网都为他点赞!

全红婵爸爸为啥要一次性买500吨糖?原因曝光,全网都为他点赞!

社会日日鲜
2026-04-30 06:21:54
云南一方丈意外身亡,整理遗物银行卡有498万,方丈女儿提出继承,寺庙拒绝:出家人,这笔钱属于寺庙!

云南一方丈意外身亡,整理遗物银行卡有498万,方丈女儿提出继承,寺庙拒绝:出家人,这笔钱属于寺庙!

大爱三湘
2026-04-28 19:39:12
1998年,蒋万安和学姐石舫亘,一张罕见合影,后来他们结为了夫妻

1998年,蒋万安和学姐石舫亘,一张罕见合影,后来他们结为了夫妻

朗威谈星座
2026-04-30 16:59:03
尼克斯最大领先达到61分! 为1996-1997赛季以来季后赛最大分差

尼克斯最大领先达到61分! 为1996-1997赛季以来季后赛最大分差

郝小小看体育
2026-05-01 11:17:26
曝iPhoneFold定价14999元!砍掉面容换极致轻薄

曝iPhoneFold定价14999元!砍掉面容换极致轻薄

科技数码阿伟
2026-04-29 22:11:03
跟儿子“换血”的硅谷富豪,成为世界首位返老还童的人,如今怎样

跟儿子“换血”的硅谷富豪,成为世界首位返老还童的人,如今怎样

谈史论天地
2026-04-28 06:34:30
牧民雪天救助了产崽母虎,谁知次日虎王竟带二十多头猛虎包围院子

牧民雪天救助了产崽母虎,谁知次日虎王竟带二十多头猛虎包围院子

卡西莫多的故事
2026-04-10 09:12:17
耻辱!里夫斯火线复出16中4!名宿怒喷詹姆斯无关键基因

耻辱!里夫斯火线复出16中4!名宿怒喷詹姆斯无关键基因

篮球神吐槽
2026-04-30 13:15:25
八十岁后,老人能活到以下状态,就是人生赢家,便是圆满!

八十岁后,老人能活到以下状态,就是人生赢家,便是圆满!

小谈食刻美食
2026-04-22 07:33:20
最接地气走私?男子走私51公斤盒饭偷渡澳门,只为赚取 30 元差价

最接地气走私?男子走私51公斤盒饭偷渡澳门,只为赚取 30 元差价

川渝视觉
2026-04-28 23:29:45
9换4亏麻了!奇才送出5个选秀签,结果一场没打,今夏就要离队?

9换4亏麻了!奇才送出5个选秀签,结果一场没打,今夏就要离队?

你的篮球频道
2026-05-01 07:12:01
李德生的女儿在美国临产时,他说:回国,把孩子生在祖国

李德生的女儿在美国临产时,他说:回国,把孩子生在祖国

大运河时空
2026-04-30 07:25:03
陆毅嘴唇发紫去体检,50岁患高血压,看了他日常的三餐就知道原因

陆毅嘴唇发紫去体检,50岁患高血压,看了他日常的三餐就知道原因

做一个合格的吃瓜群众
2026-04-28 11:18:11
2026-05-01 12:20:49
InfoQ incentive-icons
InfoQ
有内容的技术社区媒体
12328文章数 51868关注度
往期回顾 全部

科技要闻

苹果上季在华收入继续大增 iPhone收入新高

头条要闻

辽宁舰遭日本侦察机侦察 解放军一句警告让其放弃企图

头条要闻

辽宁舰遭日本侦察机侦察 解放军一句警告让其放弃企图

体育要闻

季后赛场均5.4分,他凭啥在骑士打首发?

娱乐要闻

邓超在景德镇被偶遇,穿黑外套逛茶园

财经要闻

GPU神话松动,AI真正的战场变了

汽车要闻

专访捷途汪如生:捷途双线作战 全球化全面落地

态度原创

亲子
本地
家居
旅游
房产

亲子要闻

科普|孩子为何白天不咳晚上咳

本地新闻

用青花瓷的方式,打开西溪湿地

家居要闻

灵动实用 生活艺术场

旅游要闻

安徽定远:知恩“藕”遇令狐山 庙会绽放新风采

房产要闻

熬了6年,涨了2亿,三亚核心区这块地再次上架

无障碍浏览 进入关怀版