
OpenJDK
JEP 526,惰性常量(第二次预览),已从 JEP 草案 8359894提升至候选状态。以前被称为稳定值和计算常数,这个 JEP 在第一轮预览后提出了第二次预览,即:JEP 502,稳定值(预览版),针对 JDK 26。这个特性引入了计算常量的概念,定义为最多初始化一次的不可变值占位符。这提供了 final 字段的性能和安全性优势,同时在初始化时机上提供了更大的灵活性。这个 JEP 的修订包括:从稳定值更名为惰性常量,因为新名称更好地捕捉了高级用例的意图;以及增强的可发现性。
JEP 525,结构化并发(第六次预览),已从 JEP 草案 8366891 提升至候选状态。这个 JEP 在 JDK 19 至 JDK 25 的五轮预览后提出了第六次预览。这个特性通过引入结构化并发的概念来简化并发编程,将“在不同线程中运行的一组相关任务视为一个工作单元,从而简化错误处理和取消,提高了可靠性,并增强了可观测性。”唯一的重大变化是在StructuredTaskScope.Joiner
接口添加了 onTimeout()
方法,允许该接口的实现在超时后返回结果。
JDK 26
JDK 26 的早期访问构建版本Build 17在上周已经发布,其中包括对 Build 16 的更新,及对各种问题的修复。关于这个版本的更多详细信息可以在发布说明中找到。
BellSoft
BellSoft 发布了基于最近发布的 JDK 25构建的Liberica Native Image Kit 25.0.0.0 版本。这个版本的特点包括:对原生图像转换为高效机器指令的 Vector API 操作的初始优化支持;以及现在默认启用的全程序稀疏条件常量传播(Whole-Program Sparse Conditional Constant Propagation,WP-SCCP),提高了指向分析的精度,从而潜在地减小了生成的二值原生图像的大小。
Spring 框架
Spring AI 1.1.0 的第二个里程碑版本发布,提供了缺陷修复、文档改进、依赖升级和显著特性,如:升级了MCP Java SDK的版本 0.13.1,增强对模型上下文协议(MCP)的支持;以及新的 EmbeddingOptions
和 EmbeddingOptions.Builder
接口的实现,以与 ChatOptions
接口的设计保持一致。关于该版本的更多详细信息可以在发布说明中找到。
JobRunr
JobRunr 8.1.0 的发布带来了缺陷修复、依赖升级和新特性,如:支持 JDK 25;在 Quarkus 和 Micronaut 应用程序中支持 @AsyncJob
注解;以及能够直接从 JobContext
类获取作业的当前重试次数,允许在一定数量的作业失败尝试后重新定义应用程序的行为。关于该版本的更多详细信息可以在发布说明中找到。
Quarkus
Quarkus的 3.28.0 和 3.27.0 版本(在这里和这里宣布)提供了缺陷修复、依赖升级和新特性,如:在 Liquibase MongoDB 扩展中支持多个客户端;能够以编程方式配置防止跨站请求伪造(CSRF);以及 OidcRequestFilter
和 OidcResponseFilter
接口现在可以通过使用 @BearerTokenAuthentication
和 @AuthorizationCodeFlow
注解来限制特定的身份验证流。关于该版本的更多详细信息可以在发布说明中找到。
Open Liberty
Open Liberty 25.0.0.10 的beta版本发布,特点包括:支持 JDK 25;以及在 server.xml
文件中为 <classloader>
元素添加了一个新 overrideLibraryRef
属性,允许在应用程序类路径覆盖已经包含在应用程序中的类之前搜索库类路径。
LangChain4j
LangChain4j 1.6.0 的正式发布(以及第 12 个 beta 版本)带来了新的集成:Azure Container Apps中的动态会话和 MarkdownDocumentParser
类。其他显著变化包括:新的 @HumanInTheLoop
注解,用于声明式代理 API;以及能够在 SupervisorAgent
接口上配置 ChatMemoryProvider
功能接口的实例。关于该版本的更多详细信息可以在发布说明中找到。
原文链接:
https://www.infoq.com/news/2025/09/java-news-roundup-sep22-2025/
评论