Java近期资讯:延迟常量、TornadoVM 3.0、NetBeans 29、Quarkus、JReleaser和Open Liberty
Source: InfoQ - Backend
OpenJDK
JEP 531,延迟常量(Lazy Constants,第三次预览)已从JEP Draft 8329758升级为Candidate状态。该特性以前叫做StableValues,在即将发布的JDK 26和JDK 25中完成两轮预览后,第三次预览版本包含两处变更,一是从LazyConstant接口中移除isInitialized()和orElse()方法,因为这两个方法不符合该特性的设计目标;二是新增ofLazy()工厂方法,该方法可以针对Java的三种集合类型(List、Set和Map)创建稳定的预定义元素。
JDK 26
JDK 26早期访问版本中,Build 35仍是当前最新版本。关于该版本的详细信息,可以查阅发布说明。
JDK 27
本周发布了JDK 27早期访问版本的Build 11,对Build 10的各种问题进行了修复。关于该版本的详细信息,可以查阅发布说明。
关于JDK 26和JDK 27,鼓励开发者可通过Java Bug Database提交缺陷。
TornadoVM
TornadoVM 3.0.0的GA版本包含了缺陷修复、依赖项升级及多项重要变更,包括,重构IntelliJ项目的生成逻辑,移除面向终端用户的CLI参数--intellijinit,改为仅面向开发者的工作流使用,确保开发者可以配置IDE并且能够更便捷地在不同后端间切换;重构GitHub Actions,拆分JDK 21和JDK 25的测试、打包与部署流程。关于该版本详情可分别查阅针对JDK 25版本和JDK 21版本的发布说明。
Apache NetBeans
Apache NetBeans版本发布,包含了缺陷修复、依赖项升级及新功能,包括,优化LazyProject类的初始化性能;通过同步过滤列表的操作请求,解决NotificationCenterManager类实例引发的告警;更新DefaultGitHyperlinkProvider类以支持Codeberg项目。关于该版本的详细信息,可以查阅发布说明。
Open Liberty
Open Liberty 26.0.0.2 GA版本的主要更新包括,Liberty Build Plugins中新增对Java Toolchains支持,允许开发者将构建工具使用的JDK与运行Liberty 服务器及相关应用的JDK分离;修复CVE-2025-14914远程代码执行漏洞,该漏洞会影响Open Liberty 17.0.0.3至26.0.0.1版本,此漏洞允许特权攻击者上传包含路径遍历序列的ZIP压缩包,以覆盖文件并执行任意的代码。
Quarkus
Quarkus 3.32版本发布,提供了缺陷修复、依赖项升级及新功能,包括,集成Leyden项目;支持通过Quarkus SmallRye Stork扩展等服务注册器实现Quarkus 应用的自动服务注册;优化优雅关闭流程,尽可能避免关闭过程中出现HTTP 503(Service Unavailable)状态码。关于该版本的详细信息,可以查阅3.32.1版本和3.32.0版本的发布说明。
Micronaut
Micronaut基金会发布基于Micronaut Core 4.10.6的Micronaut Framework 4.10.9版本,包含了缺陷修复以及对Micronaut Servlet、Micronaut for Spring、Micronaut MCP等模块的补丁更新。关于该版本的详细信息,可以查阅发布说明。
JReleaser
JReleaser 1.23.0版本发布,这是一款简化项目发布流程的Java工具,该版本包含了缺陷修复、文档优化、依赖项升级及新功能,比如,为ChangelogGenerator类和Changelog接口新增paths属性,支持仅过滤影响指定路径的提交记录;更新ChronVer类,允许遵循ChronVer规范中更宽松的时间格式化规则。关于该版本的详细信息,可以查阅发布说明。
Chicory
Chicory 1.7.0版本发布,这是一个JVM原生的WebAssembly运行时,该版本新增了对两项WebAssembly提案的支持,即WasmGC(WebAssembly垃圾回收提案(GC Proposal for WebAssembly)),允许在WebAssembly模块中使用支持垃圾回收的结构体和数组类型;WebAssembly多内存提案(Multi Memory Proposal for WebAssembly),允许WebAssembly模块同时声明并访问多个内存实例。这些新特性使Chicory进一步接近完全兼容Wasm 3.0规范。
RefactorFirst
Improving公司首席软件顾问Jim Bethancourt发布了RefactorFirst 0.8.0版本,这是一款标记应用中需要优先重构部分的工具。该版本变更包括,从GitLogReader类中移除两个未使用方法gitRepository()和listRepositoryContentsAtHEAD(),降低Eclipse JGit的内存占用;修复因生成的类及其关联历史在Git中不存在,导致执行Git查找时出现空指针异常(NullPointerException)的问题。关于该版本的详细信息,可以查阅发布说明。
Jox
Jox 1.1.2-channels版本发布,这是一款在Java中实现高效Channel数据结构、适配虚拟线程的虚拟线程库,该版本的重要变更包括,为Channel类及Sink、Source接口新增非阻塞方法trySend()和tryReceive(),以适配Netty、Vert.x等非阻塞框架;修复因GitHub将引用设置为临时合并提交,导致Release Drafter GitHub Action在pull_request事件中执行失败的问题。关于该版本的详细信息,可以查阅发布说明。
原文链接:
Java News Roundup: Lazy Constants, TornadoVM 3.0, NetBeans 29, Quarkus, JReleaser, Open Liberty