Quarkus 3.0 正式发布
Red Hat 在经过六个 alpha 版本、一个 beta 版本和两个候选版本后,正式发布了备受期待的 Quarkus 3.0 版本。此版本带来了众多新功能和改进,以下是主要内容概述:
主要新功能
支持 Jakarta EE 10 和 MicroProfile 6.0:
- Quarkus 3.0 迁移到 Jakarta EE 10,采用了新的
jakarta.*
包命名空间。 - 引入了 CDI Lite 和 Build Compatible Extensions (BCE),增强了扩展的兼容性和构建时优化。
- Quarkus 3.0 迁移到 Jakarta EE 10,采用了新的
Hibernate ORM 6.2 和 Hibernate Reactive 2.0:
- Hibernate ORM 从 5.0 升级到 6.2,带来了多项变化,部分为破坏性更新,开发者需参考迁移指南进行调整。
- Hibernate Reactive 升级到 2.0,以保持与 Hibernate ORM 6 的兼容性。
SmallRye Mutiny 2.0.0:
- 升级到 SmallRye Mutiny 2.0.0,改用 Java Flow API 替代 Reactive Streams。
改进的开发者体验:
- 全新的 Dev UI,提供更现代、可扩展且用户友好的界面。旧版 Dev UI 仍可通过
/q/dev-v1
访问,但将在未来版本中移除。 - CLI、Maven 和 Gradle 插件得到增强,支持将应用部署到 Kubernetes、Knative 和 OpenShift 等平台,无需修改项目依赖或配置。
- 支持 Maven 3.9 和 Gradle 8.0,最低要求为 Maven 3.8.2。
- 全新的 Dev UI,提供更现代、可扩展且用户友好的界面。旧版 Dev UI 仍可通过
Eclipse MicroProfile 6.0:
- 与 Jakarta EE 10 Core Profile 对齐,用 MicroProfile Telemetry 替代 MicroProfile OpenTracing。
- RESTEasy Reactive 增强了可用性,支持检索所有 multipart parts。
OpenTelemetry 扩展:
- 支持 SDK 自动配置,配置命名空间改为
quarkus.otel.*
。 - 简化了 JDBC 的 OpenTelemetry 启用,只需设置
quarkus.datasource.jdbc.telemetry
为true
。
- 支持 SDK 自动配置,配置命名空间改为
Java 11 的弃用
由于 OpenJDK 社区将在 2023 年 9 月结束对 Java 11 的主动支持,Quarkus 将其标记为弃用。尽管核心功能仍将继续支持 Java 11,但建议开发者升级到 Java 17 或更高版本以获得最佳体验。
迁移支持
为帮助开发者顺利迁移到 Quarkus 3.0,提供了以下资源:
- 全面的 迁移指南。
- 专门的 Hibernate ORM 6.2 更新指南。
- 新增的更新工具,可自动化处理包名调整、依赖更新、配置文件升级以及 Quarkiverse 扩展的兼容性更新。
总结
Quarkus 3.0 的发布标志着 Java 生态系统的一大进步,为开发者提供了更强大的工具和更优的体验。通过专注于开发者体验、性能和可扩展性,Quarkus 3.0 巩固了其作为构建高效、弹性应用的顶尖 Java 框架的地位。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。