本周(2025年11月24日当周)Java社区动态聚焦于多个重要项目的版本更新,其中包括Spring Cloud、Quarkus、Hibernate ORM、JobRunr、LangChain4j和Java Operator SDK的点版本发布,以及Hibernate Reactive、Gradle的首个候选版本和Keycloak的维护版本。
OpenJDK
- Project Jextract:基于JDK 25的早期访问版本25-jextract+2-4发布,建议macOS Catalina及更高版本用户在使用jextract二进制文件前移除bits中的隔离属性。
- JDK 26:JDK 26早期访问版本Build 26发布,包含自Build 25以来的多项问题修复,详情可查阅发布说明。
Spring Framework
Spring Cloud 2025.1.0(代号Oakwood) 发布,包含错误修复及多个子项目的显著更新:Spring Cloud Kubernetes 5.0.0、Spring Cloud Function 5.0.0、Spring Cloud Stream 5.0.0以及Spring Cloud Circuit Breaker 5.0.0。主要破坏性变更包括移除了已弃用的spring-cloud-stater-parent构件。此版本与Spring Framework 7.0和Spring Boot 4.0兼容。
Quarkus
Quarkus 3.30 发布,带来了错误修复、依赖升级和新功能,例如:
- 在REST客户端上支持Jackson的
@JsonView注解进行序列化/反序列化。
- 新增
Decrypt类,提供decryptCLI命令,使用AES/GCM/NoPadding算法解密密钥值。
- 允许用户选择需要传播OIDC令牌的REST客户端方法。
Hibernate
- Hibernate ORM 7.2.0.CR3:第三个候选版本引入显著变化,包括新的
@EmbeddedTable注解,在定义实体时可避免使用多个Jakarta Persistence的@AttributeOverride和/或@AssociationOverride注解;以及新的FindMultipleOption接口,用于改进多ID加载。
- Hibernate Reactive 4.2.0.CR1 & 3.2.0.CR1:首个候选版本发布,包含错误修复,并升级了Hibernate ORM 7.2.0.CR3和Gradle 9.1.0依赖。
JobRunr
JobRunr 8.3.0 发布,特性包括:
- 支持Spring Boot 4和Jackson 3,同时保持与Spring Boot 3和Jackson 2的兼容性。
- 仪表盘改版,增加了深色模式和控制中心。
- 支持Error Prone(一种通过在编译器中增强类型分析以捕获更多错误的工具)。
LangChain4j
- LangChain4j 1.9.0:正式版(及第16个Beta版)发布,包含错误修复、依赖升级和重要变更,例如:新的通用代理
Planner接口,用于创建协调一组针对特定需求定制的子代理间交互的自定义代理模式;集成WebSocket Transport for MCP。
- LangChain4j 1.9.1:紧随其后发布的正式版(及第17个Beta版),解决了重要问题,例如:当代理没有输出时避免
NullPointerException;默认禁用GlobalTestRetryExtension类并移除junit-platform.properties文件,以避免干扰langchain4j-core测试模块用户的JUnit自定义配置。
Java Operator SDK
Java Operator SDK 5.2.0 发布,带来重要变更,例如:
- 新的
ResourceIDMapper和ResourceIDProvider接口,为跨框架使用自定义ID类型提供了统一方法。
- 新的执行模式,通过将
@ControllerConfiguration注解中定义的triggerReconcilerOnAllEvent()方法设置为true,对协调发生时机提供更精细的控制。
Keycloak
Keycloak 26.4.6 维护版本发布,提供了错误修复,并解决了CVE-2025-13467漏洞。该漏洞允许经过身份验证的领域管理员通过恶意LDAP服务器配置触发不可信Java对象反序列化,源于Keycloak LDAP用户联邦提供程序中的一个缺陷。
Gradle
Gradle 9.3.0 的首个候选版本发布,带来了多项改进:
- 测试报告增强:改进了HTML测试报告,对嵌套、参数化和基于套件的测试支持更好,聚合报告也更清晰。
- 错误与警告报告优化:使用Problems API,当启用
--warning-mode=all时,错误和警告信息现在会在控制台中渲染,并对某些退出码提供了更清晰的解释。
- 构建脚本编写增强:
AttributeContainer接口新增named()方法,可直接从容器创建属性值,无需使用ObjectFactory接口。这些改进有助于提升持续集成和交付流程 中的反馈清晰度。
- LangChain4j 的新代理接口展现了现代人工智能框架 如何更灵活地编排复杂任务流。
|