2023年5月1日Java周报总结
本周Java社区发布了多个重要更新,涵盖了OpenJDK、JDK 21、Spring生态系统、Infinispan、Open Liberty、Quarkus、Helidon、Apache Camel、Arquillian以及OptaPlanner的转型。
OpenJDK
- JEP 448: Vector API (第六次孵化) 已从Candidate提升为Proposed to Target,计划在JDK 21中发布。该JEP在Project Panama的支持下,增强了Vector API,允许从
MemorySegment加载和存储向量。 - JEP 445: 无名类和实例主方法(预览)已从Candidate提升为Proposed to Target,旨在简化Java初学者编写程序的门槛。
- JEP 441: switch的模式匹配已从Candidate提升为Proposed to Target,该功能增强了switch表达式和语句的模式匹配能力。
- JEP 440: 记录模式已从Candidate提升为Proposed to Target,允许解构记录值并与类型模式结合使用。
- JEP 439: 分代ZGC已从Candidate提升为Proposed to Target,旨在通过分代收集提高应用性能。
- JEP 404: 分代Shenandoah(实验性)已从Candidate提升为Proposed to Target,增强Shenandoah垃圾收集器的分代收集能力。
- JEP 450: 紧凑对象头(实验性)从JEP Draft 8294992提升为Candidate,计划将Java对象头大小缩减至64位。
- JEP 401: 更名为“值对象的扁平化堆布局”,并更新了规范文档。
JDK 21
- Build 21已发布,包含多个问题修复和更新。开发者可通过Java Bug Database报告问题。
Spring框架
- Spring Boot 3.1.0-RC2: 发布了第二个候选版本,新增了Docker Compose服务连接支持,并弃用了Couchbase SSL keystore属性。
- Spring Modulith 0.6: 发布新版本,包含MongoDB事务自动配置、事件发布注册表的异步处理支持等新功能,并计划将其提升为顶级非实验性项目。
- Spring Cloud for AWS 3.0.0: 发布新版本,兼容Spring Boot 3.0,并基于AWS SDK V2重新编写了SQS集成模块。
- Spring Cloud Data Flow 2.10.3: 修复了多个安全漏洞,并升级了Spring Boot和Spring Cloud子项目依赖。
- Spring Tools 4.18.1: 新增了对
@Value和@ConditionalOnProperty注解的支持,并提供了对Eclipse 2023-06里程碑版本的早期访问。
Infinispan
- Infinispan 14.0.9.Final: 修复了与JDK17的第三方集成测试问题,并移除了Jaeger测试容器的依赖。
Open Liberty
- Open Liberty 23.0.0.4: 新增了ARM64架构的容器镜像支持,并修复了Apache Commons FileUpload中的CVE-2023-24998漏洞。
Quarkus
- Quarkus 3.0.2.Final: 修复了Infinispan Dev Services中的文件命名问题、Dev UI2显示错误Java版本等问题。
- Quarkus 2.16.7.Final: 修复了OIDC代码加载解密密钥时的算法比较问题,并解决了
UserInfo类中的NullPointerException问题。
Helidon
- Helidon 3.2.1: 新增了
JpaExtension类的启用标志,并改进了与MicroProfile Rest Client和Fault Tolerance规范的集成。
Apache Software Foundation
- Apache Camel 4.0.0-M3: 修复了多个问题,并支持Micrometer Observation和Spring Boot的HTTP服务器集成。
Arquillian
- Arquillian 1.7.0.Final: 支持Jakarta Servlet 6.0,并修复了
NoClassDefFoundError异常。
OptaPlanner转型至Timefold
- OptaPlanner将转型为Timefold,这是一家由Maarten Vandenbroucke和Geoffrey De Smet新成立的规划优化公司。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。