第3章 コマンドラインでの Quarkus プロジェクトの作成
コマンドラインで Quarkus Maven プラグインを使用し、コマンドラインで属性および値を指定するか、インタラクティブモードでプラグインを使用して、Quarkus プロジェクトを作成できます。作成されるプロジェクトには以下の要素が含まれます。
- Maven の構造
- 関連するユニットテスト
-
アプリケーションの起動後に
http://localhost:8080
でアクセス可能なランディングページ -
src/main/docker
における JVM およびネイティブモード用のDockerfile
サンプルファイル - アプリケーション設定ファイル
手順
コマンドターミナルで以下のコマンドを入力し、Maven が JDK 11 を使用していること、そして Maven のバージョンが 3.6.3 以上であることを確認します。
mvn --version
- 上記のコマンドで JDK 11 が返されない場合は、JDK 11 へのパスを PATH 環境変数に追加し、上記のコマンドを再度入力します。
Quarkus Maven プラグインを使用して新規プロジェクトを作成するには、以下のいずれかの方法を使用します。
以下のコマンドを入力します。
mvn io.quarkus:quarkus-maven-plugin:1.7.6.Final-redhat-00014:create \ -DprojectGroupId=<project_group_id> \ -DprojectArtifactId=<project_artifact_id> \ -DplatformGroupId=com.redhat.quarkus \ -DplatformArtifactId=quarkus-universe-bom \ -DplatformVersion=1.7.6.Final-redhat-00014 \ -DclassName="<classname>"
このコマンドで、以下の値を置き換えます。
-
<project_group_id>
: プロジェクトの一意の識別子。 -
<project_artifact_id>
: プロジェクトおよびプロジェクトディレクトリーの名前。 -
<classname>
: 生成されたリソースの完全修飾名 (例:org.acme.quarkus.sample.HelloResource
)。
-
インタラクティブモードでプロジェクトを作成します。
mvn io.quarkus:quarkus-maven-plugin:1.7.6.Final-redhat-00014:create
プロンプトが表示されたら、必要な属性値を入力します。
注記以下のコマンドを入力し、プロジェクト属性のデフォルト値を使用してプロジェクトを作成することもできます。
mvn io.quarkus:quarkus-maven-plugin:1.7.6.Final-redhat-00014:create -B
以下の表は、
create
コマンドで定義できる属性を一覧表示しています。属性 デフォルト値 説明 projectGroupId
org.acme.sample
プロジェクトの一意識別子。
projectArtifactId
なし
プロジェクトおよびプロジェクトディレクトリーの名前。
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
なし
生成されたリソースの完全修飾名。アプリケーションの作成後、REST エンドポイントは以下の URL で公開されます。
http://localhost:8080/$path
デフォルトの
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
をベースにしたプラットフォームを使用します。