如何更新使用的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
)
升级现有应用程序中使用的 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
)