Quarkus 3.0.0.Alpha4 发布 - Jakarta EE 10 系列的第四个迭代

正如大家可能已经知道的,我们去年启动了 Quarkus 3.0 的工作,并且正在继续这项工作,这在 这里这里这里这里 有所描述。

Quarkus 3.0.0.Alpha4 是这项工作的第四个迭代,它标志着一个重要的里程碑:Jakarta EE 10 流现在是我们的默认流,因为 Jakarta EE 10 的工作已集成到 Quarkus 存储库的 main 分支中。

在 Jakarta EE 10 方面,它在各个地方都有小的升级,使用了最新版本的规范和实现。

但是,此版本还带来了一些新功能和增强功能:

  • Azure Functions 扩展

  • 添加 gRPC InProcess 支持

  • 在 RESTEasy Reactive 中支持检索所有 Multipart 部分

  • 支持 StatementInspector 作为 @PersistenceUnitExtension 管理的 Bean

  • 引入一种方式让用户自定义 Flyway 配置

  • 支持自定义 Flyway 凭据/URL

  • 将 kubernetes-client-bom 从 6.3 升级到 6.4

  • Scheduler API - 使作业能够以编程方式进行调度

  • Qute - 引入 CacheSectionHelper

  • Cache 扩展 - 允许全局默认缓存配置

  • Flyway 和 Liquibase 现在作为初始化容器在清单中运行。

  • 新的 Elasticsearch Java Client 扩展

最后,下面介绍的迁移脚本已得到极大改进,应该能够全面迁移更多项目。

我们计划在未来几个月定期发布新的 Alpha 版本以分享我们的进展。在此之前,我们鼓励您进行测试并提供您的反馈。

尝试 Quarkus 3

目前,最简单的入门方法是使用 code.quarkus.io 或使用 Quarkus CLI

quarkus create app --stream=3.0

请注意,在此阶段,虽然所有核心扩展都可用,但只有 Quarkus 平台的部分可用。 并非所有扩展都已迁移到 Jakarta 包(例如,Camel Quarkus 或 Kogito 尚未可用)。

升级到 Quarkus 3

对于所有扩展都可用的现有应用程序,我们有一个 OpenRewrite 配方,您可以尝试。

有一个单行命令尝试使用 JBang 脚本自动执行此操作。

如果您已经安装了 JBang,请运行

jbang --fresh upgrade-to-quarkus3@quarkusio

如果不是,对于 Linux 和 macOS

curl -Ls https://sh.jbang.dev | bash -s - --fresh upgrade-to-quarkus3@quarkusio

对于 Windows

iex "& { $(iwr https://ps.jbang.dev) } --fresh upgrade-to-quarkus3@quarkusio"

运行此命令后,您的项目应该已更新其依赖项、源代码和文档以使用 Quarkus 3。

如果它对您不起作用,可能是我们遗漏了一些内容,或者您正在使用尚不支持 Quarkus 3 的扩展。

无论哪种情况,请告知我们,以便我们可以共同改进迁移脚本。

加入我们

我们非常重视您的反馈,所以请报告错误,提出改进建议…… 让我们一起构建伟大的东西!

如果您是 Quarkus 用户或只是好奇,请不要害羞,加入我们热情的社区