OpenJDK
Oracle Java 架构师Paul Sandoz发起了一个提案,准备启动一个叫作巴比伦(Babylon)的 Java 项目,主要目标是“将 Java 扩展到外部编程模型,如 SQL、可微分编程、机器学习模型和 GPU 中”。巴比伦可以通过代码反射实现将 Java 扩展到外部编程模型中,这是对 Java 反射机制的增强,支持以适当的形式访问、分析和转换 Java 代码。这样一来,通过 Java 库的形式来支持外部编程模型就变得相对容易。
Sandoz 将领导这个新项目,并提供了一份初步评审人员名单,其中包括 Oracle 软件架构师兼 Panama 项目负责人Maurizio Cimadamore、Oracle 软件架构师Gary Frost和英特尔首席软件工程师Sandhya Viswanathan。想要了解更多信息的开发者可以观看最近的JVM语言峰会YouTube视频。
Sandoz 上周还介绍了 JEP 草案 8315945,Vector API(第七轮孵化器)。这个 JEP 来自Panama项目,整合了针对前六轮孵化的增强和改进:即将在 JDK 21 GA 版本中交付的 JEP 448(Vector API (第六轮孵化器))、在 JDK 20 中交付的 JEP 438(Vector API (第五轮孵化器))、在 JDK 19 中交付的 JEP 426(Vector API (第四轮孵化器))、在 JDK 18 中交付的 JEP 417(Vector API (第三轮孵化器))在 JDK 17 中交付的 JEP 414(Vector API (第二轮孵化器))、在 JDK 16 中作为孵化器模块交付的 JEP 338(Vector API (孵化器))。JEP 448 最重要的变化包括为支持 Vector API 值而对JVM编译器接口 (JVMCI)进行的增强。
JDK 21
Build 35仍然是 JDK 21 当前的早期访问构建版本。关于该构建的更多细节可以在发行说明中找到。
JDK 22
JDK 22 的早期访问构建版本Build 14提供了针对 Build 13 的更新,其中包括对各种问题的修复。关于这个版本的更多细节可以在发行说明中找到。
Oracle Java 平台组首席架构师Mark Reinhold正式提议JDK 22 的发布时间表:
Rampdown Phase One(从主分支 fork):2023 年 12 月 7 日
Rampdown Phase Two:2024 年 1 月 18 日
初始候选版本:2024 年 2 月 8 日
最终候选版本:2024 年 2 月 22 日
普遍可用:2024 年 3 月 19 日
JDK提交者和评审者对该提案的评论将在 2023 年 9 月 15 日 23 点 之前开放讨论。如果届时没有人反对,那么根据 JEP 2.0流程建议,这将是 JDK 22 的发布时间表。
对于JDK 22和JDK 21,开发者可以通过Java Bug Database报告缺陷。
GraalVM
Oracle Labs 发布0.9.26版本的原生构建工具,一个 GraalVM 项目,提供了可与 GraalVM 原生镜像互操作的插件。新版本包含了一些值得注意的变化,例如:使用AttributeProviderAPI 修复与 Gradle 8.3 的兼容性问题、显式声明Plexus-Xml和Plexus-Utils依赖项来修复与 Maven 3.9.x 的兼容性问题、为即将发布的 GraalVM for JDK 21 准备原生构建工具。关于该版本的更多细节可以在变更日志中找到。
Spring Framework
在过去的两周里,Spring 一直很平静,但 VMware 的 Spring 开发者布道师Josh Long却没有闲着。除了他每周发表的“This Week in Spring”博文之外,Long 还发表了针对 SpringOne 2023 的个人概述。他最近的一篇博文是关于 Spring Boot 3.2、GraalVM 原生镜像、Java 21 和虚拟线程是如何协同工作的。他还与 VMware Spring 安全负责人Rob Winch、VMware Spring 工程高级技术人员Daniel Garnier-Moiroux和 Eventuate 创始人兼 CEO Chris Richardson一起录制了“Bootiful”播客。
Quarkus
Quarkus3.3.2 版本发布,带来了依赖项升级和一些显著的变化,如:改进了 Dev UI 的 OIDC Auth0;删除BuildConfig类的imagePushSecret()
方法,这个方法在使用内部注册表时是无效的;修复了 Quarkus 构建问题(使用quarkus.container-image.builder=jib
属性时不考虑 Podman 的auth.json
文件。关于该版本的更多细节可以在变更日志中找到。
MicroProfile
MicroProfile 工作组发布MicroProfile 6.1的首个发行候选版本,其中包括对MicroProfile Config、MicroProfile Metrics和MicroProfile Telemetry规范的更新。因此,MicroProfile 6.1 的最终特性(定于 10 月初发布 GA 版本)将包含:
Jakarta EE 10 Core Profile
MicroProfile Config 3.1
MicroProfile Fault Tolerance 4.0
MicroProfile Metrics 5.1
MicroProfile Health 4.0
MicroProfile Telemetry 1.1
MicroProfile OpenAPI 3.1
MicroProfile JWT Authentication 2.1
MicroProfile Rest Client 3.0
值得注意的是,Jakarta EE 10核心概要包含了七个规范中的四个,即:Jakarta Contexts and Dependency Injection (CDI) 4.0、Jakarta RESTful Web Services 3.1、Jakarta JSON Processing 2.1和Jakarta JSON Binding 3.0,这些是在 MicroProfile 早期从 Java EE 7 和 Java EE 8 发展而来的 JSR 规范。
MicroProfile Config 3.1 的第二个候选发行版带来了一些值得注意的变化,如:更新了 TCK,与 CDI 4.0 的重大变更保持一致,包含了一个空的beans.xml
文件,Bean 发现模式从all
改为annotated
;MissingValueOnObserverMethodInjectionTest类的更新,在ConfigObserver被定义为@ApplicationScoped
(可代理)和final
(不可代理)时会抛出DeploymentException
。关于该版本的更多细节可以在问题列表中找到。
Helidon
Helidon4.0.0 的第二个候选发行版包含:JDK 21 基线;完全集成Helidon NímaWeb 服务器;经过重度重构的 Helidon SE API,优化了命令式/阻塞场景;对Web Server和Web Client组件的增强,实现与 Helidon 3.0 相同的功能。关于该版本的更多细节可以在变更日志中找到。
Open Liberty
IBM发布23.0.0.9-beta 版Open Liberty,包含:对Liberty Spring Boot Support 3.0的持续改进,可对在容器中创建的应用程序进行“瘦身”;Jakarta Data规范的早期预览版。
Hibernate
Hibernate Search7.0.0 的第一个测试版包含了许多依赖项升级:JDK 11 作为基准、迁移到 Jakarta EE、Hibernate ORM 6.3.0.Final、Lucene 9.7.0、Elasticsearch 8.9.0 和 OpenSearch 2.9.0。
Infinispan
Infinispan发布14.0.17.Final 版,包含了一些值得注意的问题修复,例如:由ServerEventLogger类创建的缓存阻塞了可能导致死锁的缓存连接;DefaultExecutorFactory类创建的不必要的多个 Java ThreadGroup;为RpcManager接口的实现添加缺失的跨站点指标。关于该版本的更多细节可以在问题列表中找到。
Eclipse Mojarra
Eclipse Mojarra4.0.4发布,带来了一些值得注意的变化,例如:修复了当Weld中的 Bean Deployment Archive 为空时 Mojarra 无法初始化的问题;更健壮的RetargetedAjaxBehavior类实现;UIData类的当前值是null
时返回一个静态空数据模型。关于该版本的更多细节可以在发行说明中找到。
JDKMon
由 Azul 首席工程师Gerrit Grunwald创建的 JDK 监控和更新工具JDKMon发布了17.0.71版本,从新版本可以知道关于 JDK 21 GA 版本和下一个 OpenJDK 更新的时间。
JHipster
JHipster 8.0.0 的第三个测试版带来了以下增强功能:支持 JDK 20 和 JDK 21;清理JHipster领域语言 (JDL),将文件操作、配置和验证转移到 JDL 生成器中;修复 H2 控制台由于路径设置错误而无法加载的问题。关于该版本的更多细节可以在发行说明中找到。
类似地,JHipster 7.9.4 的发行版修复了 bug 并支持 Node.js 18。关于该版本的更多细节可以在发行说明中找到。
JavaZone 大会
JavaZone大会在挪威奥斯陆的奥斯陆光谱剧院举行,来自 Java 社区的演讲者发表了演讲并举行了研讨会,主题包括:垃圾回收、量子计算、Haskell、Kubernetes、应用程序监控、微前端、JavaScript 和 Quarkus。
原文链接:
https://www.infoq.com/news/2023/09/java-news-roundup-sep04-2023/
评论