Oracle Java 语言和工具团队主要成员Angelos Bimpoudis更新了 JEP Draft 8288476(模式、instanceof和switch中的原始类型)。该草案属于Amber项目,提议允许原始类型出现在模式中的任何地方,以此来增强模式匹配。
Oracle Java 语言和 Java 虚拟机规范负责人Alex Buckley更新了 JEP Draft 8300684(预览特性:一个向后,一个向前)。该草案建议重新评审 JEP 12(预览特性)引入的预览过程,以便对该过程进行潜在的持续改进。
Oracle 技术团队主要成员Wang Jun更新了 JEP Draft 8301034(Key Encapsulation Mechanism API),这个 JEP 建议:满足标准密钥封装机制(KEM)算法的实现,通过更高级别的安全协议满足 KEM 用例,允许可插拔的 KEM 算法 Java 或本地实现。
PatientEXP 创始人兼首席执行官Archie Cobbs更新了 JEP Draft 8300786(不再要求构造函数中先出现super()和this())。该草案同样属于 Amber 项目,建议:允许没有引用正在创建的实例的语句出现在构造函数的 this()或 super()调用之前,并保留构造函数现有的安全性和初始化保证。
根据 JDK 20 的发布计划,Oracle Java 平台组首席架构师Mark Reinhold正式宣布JDK 20 已进入 Rampdown Phase Two,这标志着将于 2023 年 3 月发布的 GA 版本持续稳定。关键的错误,如回归或严重的功能问题,可以被修复,但必须通过Fix-Request流程批准。
JDK 20 的最后 6 个特性包括:
JDK 20早期访问版本的Build 33已于上周发布,其中包括针对 Build 32 的更新和对各种问题的修复。关于这个版本的更多细节可以在发布说明中找到。
JDK 21早期访问版本的Build 7也在上周可用,其中包括对 Build 6 的更新和各种问题的修复。关于这个版本的更多细节可以在发布说明中找到。
对于JDK 20和JDK 21,开发者可以向Java Bug数据库报告 Bug。
Oracle发布了GraalVM 22.3.1 社区版,与 2023 年 1 月版的Oracle关键补丁更新公告保持一致。这个版本包括 OpenJDK 19.0.2、17.0.6 和 11.0.18 的版本更新,以及 Node.js 16.18.1 的版本更新。关于这个版本的更多细节可以在发布说明中找到。
开源软件技术公司TornadoVM发布了 TornadoVM 0.15,该版本提供了一个新的 TornadoVM API,还有其他一些改进:将 TaskSchedule 类重命名为TaskGraph,添加新的类ImmutableTaskGraph和TornadoExecutionPlan来优化运行一组不可变任务图的执行计划。该版本还包含了一个改进的 TornadoVM Linux 安装程序、一个改进的带可选参数的 TornadoVM 启动脚本和一个新的文档站点。
曼彻斯特大学高级处理器技术研究小组副研究员Juan Fumero于 2020 年 3 月在伦敦QCon上介绍了 TornadoVM,并在此后分享了这篇最新的 InfoQ技术文章。
Spring Cloud Azure 5.0发布,支持 Spring Boot 3.0 和 Spring Cloud 2022.0.0,提高无密码连接的安全性,并重新设计了 Spring Cloud Azure文档。该版本还包括对一些已弃用 API 的升级。
Spring Shell 3.0.0 和 2.1.6 版本已发布,分别与 Spring Boot 3.0.2 和 2.7.8 兼容,修复了反向移植错误,改进了对位置参数和集合类型的处理。关于这些版本的更多详细信息,可以在3.0.0和2.1.6版本的发布说明中找到。
Spring Cloud 2022.0.1(代号 Kilburn)已发布,随之发布的还有 Spring Cloud 子项目(如 Spring Cloud Function、Spring Cloud Commons 和 Spring Cloud Gateway)的相应小版本。这个版本与 Spring Boot 3.0.2 兼容。关于这个版本的更多细节可以在发布说明中找到。
Quarkus 2.16.0.Final发布,提供的新特性包括:支持 Redis 扩展中的时间序列操作和数据预加载;支持 gRPC 扩展中的自定义异常处理和xDS;提高了缓存扩展的配置灵活性;一些主要为了改善开发者体验的安全相关改进。关于这个版本的更多细节可以在变更日志中找到。
Quarkus 3.0.0 的第三个alpha版本包含了 Jakarta EE 10 流的第三个迭代:包括 2.15.0.Final、2.15.1.Final、2.15.2.Final、2.15.3.Final 和 2.16.0.Final 的一系列改进;使用了SmallRye Mutiny 2.0 和 Java Flow API;Quarkus 类加载器对 Kotlin 的简化处理,方便基于 Kotlin 的 Quarkus 扩展的开发。关于这个版本的更多细节可以在发布说明中找到。
Micronaut 基金会发布了 Micronaut 3.8.3,修复了一些 Bug 并更新了一些模块:Micronaut OpenAPI和Micronaut Oracle Cloud。关于这个版本的更多细节可以在发布说明中找到。
在经历了三个里程碑版本之后,JobRunr 6.0(一个在 Java 中执行后台处理任务的辅助程序)已经向 Java 社区发布了。新的功能和改进包括:支持 Spring Boot 3.0;提供的Job Builers API 基于构建器模式来配置Job类,可以不使用@Job注解;被分配了Job Labels的作业将在仪表盘中可见;允许在一个应用程序中使用带有不同表前缀的多个JobScheduler类的实例;更新了所有可传递依赖项;提升了性能和稳定性。关于这个版本的更多细节可以在发布说明中找到。
MicroStream提供了其 Java 原生对象图持久化层的 8.0 预览版。这个第二个早期访问版本的特性包括:迁移到 JDK 11 并继续支持 JDK 8;只读模式,多个进程可以访问同一个存储;ArrayList、HashMap 和 HashSet 的实验性实现,采用了共享机制;改进了与 Spring Boot 和 Quarkus 的集成。
Hibernate ORM 6.2 的第二个候选版本根据 Java 社区对 Hibernate ORM 6.2第一个候选版本的反馈进行了许多错误修复。因此,SQL 抽象语法树(用于 Hibernate 查询语言的基于 ANTLR 的解析器)已经稳定下来,SQL MERGE 命令现在可以处理对可选表的更新。
Apache Tomcat 10.1.5 已经发布,一些显著的变化包括:修复了重构导致的回归问题(替换了对 URL 构造函数的使用);使用 HTTP/2 错误码 NO_ERROR,这样客户端在重置 HTTP/2 流时不会丢弃响应;将系统属性GET_CLASSLOADER_USE_PRIVILEGED 的默认值更改为 true,除非在 Tomcat 中运行了 Expression Language 库。关于这个版本的更多细节可以在变更日志中找到。
Apache Groovy 4.0.8 已发布,包含了错误修复和增强,例如:改进了 Groovy 断言语句的JaCoCo行代码覆盖率;引入 findAll()和 findResults()方法的变体,可接受可选的收集器参数。关于这个版本的更多细节可以在变更日志中找到。
类似地,Apache Groovy 2.5.21 也已发布,包含了 Bug 修复和依赖项ASM 9.4 的升级。关于这个版本的更多细节可以在变更日志中找到。
Camel Quarkus 2.16.0 已发布,与 Camel 3.20.1 和 Quarkus 2.16.0.Final 保持一致。它提供了对四种 DSL 的支持:JavaShell、Kotlin、Groovy 和jOOR。关于这个版本的更多细节可以在发布说明中找到。
由 Azul 首席工程师Gerrit Grunwald创建的 JDK 监控和更新工具JDKMon发布了17.0.45版本,修复了与下载对话框相关的问题。
OpenJDK 的朋友,Foojay.io,Java 生态系统的社区平台宣布将在 2023 年 2 月 4 日至 5 日(周六至周日)举行的FOSDEM 2023大会上开辟自己的开发者交流空间。
FOSDEM 是一个由志愿者组织的为期两天的活动,旨在促进免费和开源软件的采用,它将提供一些渠道和由其他组织和社区组织的开发者空间(也就是devrooms)供开发者交流。
原文链接:
https://www.infoq.com/news/2023/01/java-news-roundup-jan02-2023/
领取专属 10元无门槛券
私享最新 技术干货