如何更新使用的quarkus版本

How to update the quarkus version used

升级现有应用程序中使用的 quarkus 版本的推荐方法是什么?

我查看了我的 pom.xml,因为 quarkus 扩展没有指定使用的版本,我假设它们将根据主 quarkus 版本进行更新。 与更新相关的属性是 quarkus-plugin.version、quarkus.platform.group-id 和 surefire-plugin.version。 我如何决定要更改哪些,还有什么需要注意的吗?

有一件重要的事情要知道,我们有:

  • Quarkus 核心:这是主要的 Quarkus 工件 + 所有核心扩展:quarkus-bom 是核心之一。 Quarkus Maven 插件也是其中的一部分。
  • Quarkus 平台:它包含更多扩展,例如 Camel Quarkus:quarkus-universe-bom 是平台中的一个,它包含核心 + 附加扩展

我们通常先发布 Quarkus 核心,然后再发布 Quarkus 平台,两者之间间隔几天,因为我们经常需要发布 Camel Quarkus,这是一个 Apache 项目,每个版本都会组织 72 小时的投票。

在新创建的项目中,您具有以下属性:

    <quarkus-plugin.version>1.1.1.Final</quarkus-plugin.version>
    <quarkus.platform.artifact-id>quarkus-universe-bom</quarkus.platform.artifact-id>
    <quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
    <quarkus.platform.version>1.1.1.Final</quarkus.platform.version>
  • quarkus-plugin.version是Quarkus Maven插件的版本,应该和你使用的核心版本一致
  • quarkus.platform.artifact-id 现在可以是整个平台的 quarkus-universe-bom 或只是核心的 quarkus-bom
  • quarkus.platform.version是BOM的版本。

通常所有这些版本都应该对齐。但是......我们可能需要在平台而不是核心中进行一些快速更新,然后我们只能发布平台的新版本。老实说,这还没有发生。

举个今天发生的例子:我发布了Quarkus Core 1.2。0.Final但是我们还在等待Camel Quarkus发布来发布平台。

如果您想提前更新,可以将 BOM 更改为使用 quarkus-bom 并将所有内容更新为 1.2.0.Final.

或者您可以等待平台下周初发布并留在平台上quarkus-universe-bom

我们也仅在完整平台发布时更新网站文档和 code.quarkus.io。

以前只需发出命令就可以工作

mvn io.quarkus:quarkus-maven-plugin:1.4.2.Final:create

在基础项目目录中自动更新项目 pom.xml 文件中的 Quarkus 版本,但由于 1.6.0.Final 它会出错:

project XXXXX: Unable to generate the project in a directory that already contains a pom.xml -> [Help 1]

我会在 Quarkus 上创建一个改进建议票来恢复这个功能,也许有一个专门的 maven 目标(比如 update