Java 周报 (2023年7月24日)
本周的Java周报涵盖了OpenJDK、JDK 22、JDK 21、GraalVM、Spring Cloud、Spring Security、Grails、TornadoVM、Liberica NIK、PrimeFaces、Quarkus、Hibernate Reactive、Micronaut、JBang、JHipster Lite、JUnit和Gradle等多个项目的更新和发布。
OpenJDK
- JEP Draft 8310626: Oracle软件架构师Maurizio Cimadamore提交了JEP草案8310626,提议将Foreign Function & Memory API作为正式特性发布。该API经过两轮孵化和三轮预览,预计将在JDK 21中发布。主要改进包括:新的
Enable-Native-Access清单属性、支持编程构建C函数描述符、改进对可变长度数组的支持以及支持多种字符集的本地字符串。 - JEP Draft 8312611: Cimadamore与Per-Åke Minborg提交了JEP草案8312611,引入Computed Constants(计算常量)概念,提供类似
final字段的性能和安全性,同时提供更大的初始化灵活性。 - JEP Draft 8313278: OpenJDK提交者Julian Waters提交了JEP草案8313278,提议增强Java虚拟机的能力,使其能够加载编译为本地代码的Java应用程序和库,以加快启动和执行速度。
- jtreg 7.3: JDK回归测试工具jtreg 7.3版本发布,主要改进包括更新Unix平台上的默认环境变量、修复多模块设置中的竞争条件问题等。
JDK 21
- Build 33: JDK 21的早期访问版本Build 33发布,修复了多个问题,详细更新内容见发布说明。
JDK 22
- Build 8: JDK 22的早期访问版本Build 8发布,修复了多个问题,详细更新内容见发布说明。
GraalVM
- GraalVM Community Components 23.0.1: 包含GraalVM for JDK 20 Community 20.0.2和GraalVM for JDK 17 Community 17.0.8,修复了Native Image中的多个问题,并改进了strip mining优化。
- GraalVM Community Edition 22.3.3: 与2023年4月的关键补丁更新(CPU)保持一致,基于JDK 17.0.7和11.0.19版本。
Spring Framework
- Spring Cloud 2022.0.4: 代号Kilburn,支持重试感知的负载均衡、改进Spring Cloud Stream的异常处理,并升级了Feign和Eureka的依赖版本。
- Spring Security: 发布了多个版本以修复两个CVE漏洞,分别是WebFlux安全绕过漏洞和授权规则配置错误漏洞。
- Spring Shell: 发布了多个版本,新增了
complete()方法,支持通过多次Tab点击完成单个参数。
Grails
- Grails 6.0: 支持JDK 11,引入了Grails Forge UI,增强了与Micronaut框架的集成。
TornadoVM
- TornadoVM 0.15.2: 支持在多设备上执行多任务,增加了对三角函数的支持,并集成了ComputeAorta以支持RISC-V架构。
LibericaJDK
- Liberica NIK 23.0.1: 修复了多个CVE漏洞,并增加了对Windows上ParallelGC的实验性支持。
PrimeFaces
- PrimeFaces 13.0.0: 新增了对
SelectCheckboxMenu、InputNumber和OverlayPanel的改进,并修复了多个问题。
Quarkus
- Quarkus 3.2.2: 修复了两个回归问题,并改进了文档。
Hibernate
- Hibernate Reactive 2.0.4: 升级了Hibernate ORM的依赖,修复了
@SQLSelect注解在实体类上的问题。
Micronaut
- Micronaut 4.0.2: 提供了多个Bug修复和文档改进,并将异步验证移至处理器模块。
JBang
- JBang 0.110.0: 将Maven Central的ID从
mavencentral更改为central,并修复了下载包含大写字母的Maven工件时的问题。
JHipster
- JHipster Lite 0.39.0: 改进了Logback配置,并新增了
getInstantOrDefault()方法。
JUnit
- JUnit 5.10.0: 新增了多个稳定API和选择器,并引入了
LauncherInterceptor接口。
Gradle
- Gradle 8.3-RC2: 支持JDK 20,改进了Java编译速度,并提供了对Kotlin K2编译器的实验性支持。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。