第 3 章 在命令行中创建 Quarkus 项目
您可以在命令行中使用 Quarkus Maven 插件来创建 Quarkus 项目,方法是在命令行中提供属性和值,或者在交互模式中使用插件来创建 Quarkus 项目。生成的项目将包含以下元素:
- Maven 结构
- 关联的单元测试
-
启动应用程序后可在
http://localhost:8080
上访问登录页面 -
src/main/docker
中 JVM 和原生模式的Dockerfile
文件示例 - 应用程序配置文件
流程
在命令终端中,输入以下命令验证 Maven 是否使用 JDK 11,并且 Maven 版本是否为 3.6.2 或更高版本:
mvn --version
- 如果上述命令没有返回 JDK 11,请将 JDK 11 的路径添加到 PATH 环境变量中,然后再次输入上述命令。
要使用 Quarkus Maven 插件创建新项目,请使用以下方法之一:
使用以下命令:
mvn io.quarkus:quarkus-maven-plugin:1.11.7.Final-redhat-00009:create \ -DprojectGroupId=<project_group_id> \ -DprojectArtifactId=<project_artifact_id> \ -DplatformGroupId=com.redhat.quarkus \ -DplatformArtifactId=quarkus-universe-bom \ -DplatformVersion=1.11.7.Final-redhat-00009 \ -DclassName="<classname>"
在这个命令中,替换以下值:
-
<project_group_id
> :项目的唯一标识符 -
<project_artifact_id
> :项目名称和项目目录 -
<classname
> :生成的资源的完全限定名称,如org.acme.quarkus.sample.HelloResource
-
以互动模式创建项目:
mvn io.quarkus:quarkus-maven-plugin:1.11.7.Final-redhat-00009:create
出现提示时,输入所需的属性值。
注意另外,您可以使用以下命令使用项目属性的默认值创建项目:
mvn io.quarkus:quarkus-maven-plugin:1.11.7.Final-redhat-00009:create -B
下表列出了您可以使用
create
命令定义的属性:属性 默认值 描述 projectGroupId
org.acme.sample
项目的唯一标识符。
projectArtifactId
none
项目的名称和项目目录。如果没有指定
projectArtifactId
,Maven 插件将启动交互模式。如果目录已存在,则生成会失败。projectVersion
1.0-SNAPSHOT
项目的版本。
platformGroupId
io.quarkus
平台的组 ID。所有现有的平台都由
io.quarkus
提供。但是,您可以更改默认值。platformArtifactId
quarkus-universe-bom
平台 BOM 的工件 ID。要使用本地构建的 Quarkus 将
quarkus-universe-bom
添加到pom.xml
文件中。platformVersion
最新平台版本
要用于项目的平台版本。您可以提供一个版本范围,Maven 插件使用最新版本。
className
None
生成的资源的完全限定名称。创建应用程序后,REST 端点通过以下 URL 公开:
http://localhost:8080/$path
如果您使用默认
路径
,URL 为http://localhost:8080/hello
。path
/hello
资源路径,只有在设置了
className
时。extensions
[]
要添加到用逗号分开的项目中的扩展列表。
默认情况下,Quarkus Maven 插件使用最新的 quarkus-universe-bom
文件。此 BOM 聚合扩展,以便您可以从应用程序引用它们,使其与依赖项版本保持一致。如果您离线,则 Quarkus Maven 插件将使用 quarkus-universe-bom
的最新可用版本。如果 Maven 找到 quarkus-universe-bom
版本 2.0 或更早版本,它将根据 quarkus-universe-bom
版本使用平台。