Quarkus 3.7 计划于 2024 年 1 月发布,用它来构建和运行应用程序所需的最小 JDK 版本将是 Java 17。这其中一个原因是,OpenJDK 社区在 2023 年 9 月停止了对 Java 11 的主动支持。除此之外,Quarkus 依赖项也将其基线升级到了 Java 17。发布于 2023 年 4 月的 Quarkus 3.0 已经放弃对 Java 11 的支持。
如果启用了的话,Quarkus 就会收集构建时间分析数据。当前数据显示,只有不到 8% 的用户在 Java 11 上运行 Quarkus 构建。其他调查(如 New Relic 的 2023 年 Java 生态系统现状)也显示出,Java 11 及以上版本的使用量有所增加,而 Java 8 的使用量有所下降。Oracle 已经在 2023 年 9 月停止了针对 Java 11 的技术支持服务,而红帽公司也将在 2024 年 10 月停止对 OpenJDK 的全面支持。不过,其他组织将继续支持 Java 11,比如 Adoptium 将至少支持到 2027 年 10 月。
Java 基线的提升意味着 Quarkus(插件)开发人员现在应该支持并在 Java 17 上测试他们的代码,并且可以使用 Java 17 的新特性。然而,在这个时间点上,Quarkus 并没有使用 Java 17 的特性,他们也不需要这些特性来构建 Quarkus。提升基线的一个主要原因是 Quarkus 团队希望支持的 Quarkus(插件)的依赖项需要 Java 17。例如,计划于 2024 年发布的 Hibernate ORM 7 将需要 Java 17。
无法升级到 Java 17 的项目可以继续使用 Quarkus 3.6。不过,我们建议在项目中使用 Quarkus 3.2,因为它是支持 Java 11 的最新长期支持(LTS)版本。然而,Quarkus LTS 版本支持只有一年,因此,升级 Java 仍然很重要。
Quarkus 3.7 也支持更新的 JDK 版本,如 Java 21,但 Quarkus 选择将基线选定为 Java 17,那是因为有许多项目尚未升级到该 Java 版本之上。
Quarkus 所遵循的策略与其他需要 Java 17 的 Java 工具和框架相同,例如于 2022 年 11 月发布的 Spring Boot 3。这也意味着,所有使用 Spring Boot 3 的项目(如 JHipster)现在也需要 Java 17。2023 年 7 月发布的 Micronaut 4 和 SonarQube 服务器是另外两个需要以 Java 17 为基线的 Java 项目的示例。
要了解更多细节,请查看 Quarkus 团队的官方声明。
原文链接:
评论 2 条评论