1.3. 在命令行中创建红帽构建的 Quarkus 项目


在命令行中使用 Red Hat build of Quarkus Maven 插件,通过在命令行中提供属性和值来创建 Quarkus 项目,或者在交互模式中使用插件。您还可以使用 Quarkus 命令行界面(CLI)创建 Quarkus 项目。生成的项目包括以下元素:

  • Maven 结构
  • 关联的单元测试
  • 启动应用程序后可以访问 http://localhost:8080 的登录页面
  • src/main/docker中的 JVM 和原生模式的 Dockerfile 文件示例
  • 应用程序配置文件

先决条件

  • 已安装 OpenJDK 17 或 21。

    • 要下载红帽 OpenJDK 的构建,请登录红帽客户门户网站并转至 软件下载
  • 您已设置了 JAVA_HOME 环境变量来指定 Java SDK 的位置。
  • 已安装 Apache Maven 3.9.9。

  • 可选: 已安装 Quarkus 命令行界面(CLI),这是可用于创建 Quarkus 项目的方法之一。如需更多信息 ,请参阅安装 Quarkus CLI
注意

Quarkus CLI 主要用于开发目的,包括创建、更新和构建 Quarkus 项目等任务。但是,红帽不支持在生产环境中使用 Quarkus CLI。

流程

  1. 在命令终端中,输入以下命令验证 Maven 是否使用 OpenJDK 17 或 21,并且 Maven 版本是否为 3.9.9 :

    mvn --version
  2. 如果前面的命令没有返回 OpenJDK 17 或 21,请将路径添加到 PATH 环境变量中,然后再次输入前面的命令。
  3. 要创建项目,请使用以下方法之一:

    • 使用 Quarkus Maven 插件。输入以下命令:

      mvn com.redhat.quarkus.platform:quarkus-maven-plugin:3.20.0.redhat-00002:create \
          -DprojectGroupId=<project_group_id> \
          -DprojectArtifactId=<project_artifact_id> \
          -DplatformGroupId=com.redhat.quarkus.platform \
          -DplatformArtifactId=quarkus-bom \
          -DplatformVersion=3.20.0.redhat-00002
          -DpackageName=getting.started

      在这个命令中,替换以下值:

      • <project_group_id > : 项目的唯一标识符
      • <project_artifact_id > :项目和项目目录的名称
    • 以互动模式创建项目:

      mvn com.redhat.quarkus.platform:quarkus-maven-plugin:3.20.0.redhat-00002:create

      出现提示时,输入所需的属性值。

      注意

      您还可以通过输入以下命令来使用项目属性的默认值来创建项目:

      mvn com.redhat.quarkus.platform:quarkus-maven-plugin:3.20.0.redhat-00002:create -B

    • 使用 Quarkus CLI。输入以下命令:

      quarkus create app my-groupId:my-artifactId --package-name=getting.started
      • 您还可以使用以下命令获取可用选项列表:

        quarkus create app --help
注意

默认情况下,Quarkus Maven 插件使用最新的首选 quarkus-bom 版本。quarkus-bom 文件聚合扩展,以便您可以从应用程序引用它们以匹配依赖项版本。当您离线时,Quarkus Maven 插件使用来自 Maven 存储库更新的最后一个 quarkus-bom 版本。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.