1.4. Getting Started プロジェクトの作成
getting-started プロジェクトを作成すると、単純な Quarkus アプリケーションを起動して実行できます。getting-started プロジェクトは、次のいずれかの方法で作成できます。
- Apache Maven と Quarkus Maven プラグインを使用する
- code.quarkus.redhat.com を使用して Quarkus Maven プロジェクトを生成する
- Quarkus コマンドラインインターフェイス (CLI) を使用する
前提条件
- 環境の準備が完了している。詳細は、環境の準備 を参照してください。
手順
-
要件に応じて、
getting-startedプロジェクトの作成に使用する方法を選択します。
1.4.1. Apache Maven を使用して Getting Started プロジェクトを作成する リンクのコピーリンクがクリップボードにコピーされました!
Apache Maven と Quarkus Maven プラグインを使用して、getting-started プロジェクトを作成できます。この getting-started プロジェクトを使用して、単純な Quarkus アプリケーションを起動して実行できます。
前提条件
- Maven を使用するための環境を準備している。詳細は、環境の準備 を参照してください。
- Quarkus Maven リポジトリーを設定している。Maven を使用して Quarkus アプリケーションを作成するには、Red Hat がホストする Quarkus リポジトリーを使用します。詳細は、オンラインリポジトリーの Maven settings.xml ファイルを設定する を参照してください。
手順
次のコマンドを入力して、Maven が OpenJDK 11 または 17 を使用していること、Maven バージョンが 3.8.6 以降であること、および
mvnが PATH 環境変数からアクセスできることを確認します。mvn --version
mvn --versionCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 前のコマンドで OpenJDK 11 または 17 が返されない場合は、OpenJDK 11 または 17 へのパスを PATH 環境変数に追加し、前のコマンドを再度入力します。
プロジェクトをビルドするには、以下のコマンドのいずれか 1 つを実行します。
Linux または Apple macOS を使用している場合は、以下のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Microsoft Windows のコマンドラインを使用している場合は、以下のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Microsoft Windows PowerShell を使用している場合は、以下のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow これらのコマンドにより、
./getting-startedディレクトリーに以下の要素が作成されます。- Maven プロジェクトディレクトリー構造
-
/helloで公開されるorg.acme.quickstart.GreetingResourceリソース - ネイティブモードおよび JVM モードでアプリケーションをテストするための関連するユニットテスト
-
アプリケーションの起動後に
http://localhost:8080でアクセス可能なランディングページ -
src/main/dockerディレクトリー内のサンプル Dockerfile アプリケーションの設定ファイル
注記Mandrel は macOS をサポートしていないため、Oracle GraalVM を使用してこのオペレーティングシステム上でネイティブ実行可能ファイルをビルドできます。
ベアメタル Linux または Windows ディストリビューション上で Oracle GraalVM を直接使用して、ネイティブ実行可能ファイルをビルドすることもできます。このプロセスの詳細は、Oracle GraalVM README およびリリースノートを参照してください。
サポートされる構成の詳細は、Red Hat build of Quarkus でサポートされる構成 を参照してください。
ディレクトリー構造が作成されたら、テキストエディターで
pom.xmlファイルを開き、ファイルの内容を確認します。pom.xml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow pom.xmlファイルの<dependencyManagement>セクションには、Quarkus BOM が格納されています。そのため、pom.xmlファイルに個別の Quarkus 依存関係のバージョンを記述する必要はありません。この設定ファイルには、アプリケーションをパッケージ化するquarkus-maven-pluginプラグインも含まれています。pom.xmlファイル内のquarkus-resteasy-reactive依存関係を確認します。この依存関係により、REST アプリケーションを開発できます。<dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-resteasy-reactive</artifactId> </dependency><dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-resteasy-reactive</artifactId> </dependency>Copy to Clipboard Copied! Toggle word wrap Toggle overflow src/main/java/org/acme/quickstart/GreetingResource.javaファイルを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow このファイルには、
/helloエンドポイントに送信したリクエストに対するレスポンスとして、Hello from RESTEasy Reactiveを返す単純な REST エンドポイントが含まれています。注記Quarkus では、Jakarta REST (旧名 JAX-RS) の
Applicationクラスがサポートされていますが、必須ではありません。さらに、リクエストごとに 1 つのインスタンスが作成されるのではなく、GreetingResourceクラスのインスタンスが 1 つだけ作成されます。これは、別の*Scopedアノテーション (例:ApplicationScoped、RequestScopedなど) を使用して設定できます。
1.4.2. code.quarkus.redhat.com を使用して Getting Started プロジェクトを作成する リンクのコピーリンクがクリップボードにコピーされました!
アプリケーション開発者は、code.quarkus.redhat.com を使用して Quarkus Maven プロジェクトを生成し、アプリケーションで使用するエクステンションを自動的に追加および設定できます。さらに、code.quarkus.redhat.com は、プロジェクトをネイティブ実行可能ファイルにコンパイルするために必要な設定パラメーターを自動的に管理します。
次のアクティビティーを含む Quarkus Maven プロジェクトを生成できます。
- アプリケーションの基本情報の指定
- プロジェクトに追加するエクステンションの選択
- プロジェクトファイルのダウンロード可能なアーカイブの生成
- アプリケーションをコンパイルおよび起動するカスタムコマンドの使用
前提条件
- Web ブラウザーがある。
- Apache Maven を使用するための環境を準備している。詳細は、環境の準備 を参照してください。
- Quarkus Maven リポジトリーを設定している。Maven を使用して Quarkus アプリケーションを作成するには、Red Hat がホストする Quarkus リポジトリーを使用します。詳細は、オンラインリポジトリーの Maven settings.xml ファイルを設定する を参照してください。
オプション: 開発モードで Quarkus を起動するために使用できる方法の 1 つである Quarkus コマンドラインインターフェイス (CLI) がインストールされている。
詳細は、Quarkus CLI のインストール を参照してください。
Quarkus CLI は開発モードのみを対象としています。Red Hat は、実稼働環境での Quarkus CLI の使用をサポートしていません。
手順
- Web ブラウザーで、https://code.quarkus.redhat.com に移動します。
プロジェクトの基本情報を指定します。
-
プロジェクトのグループ名を入力します。名前の形式は、Java パッケージ命名規則に従います (例:
org.acme)。 -
プロジェクトが生成した Maven アーティファクトの名前を入力します (例:
code-with-quarkus)。 アプリケーションのコンパイルおよび起動に使用するビルドツールを選択します。選択したビルドツールにより、次の設定が決まります。
- 生成されたプロジェクトのディレクトリー構造。
- 生成したプロジェクトで使用される設定ファイルのフォーマット
プロジェクトの生成後に code.quarkus.redhat.com に表示される、アプリケーションのコンパイルと起動のためのカスタムビルドスクリプトおよびコマンド
注記Red Hat は、Quarkus Maven プロジェクトを作成する場合にのみ code.quarkus.redhat.com の使用をサポートします。
-
プロジェクトのグループ名を入力します。名前の形式は、Java パッケージ命名規則に従います (例:
アプリケーションプロジェクトに関する追加情報を指定します。
- アプリケーションの詳細を含むフィールドを表示するには、More options を選択します。
-
プロジェクトによって生成されたアーティファクトに使用するバージョンを入力します。このフィールドのデフォルト値は
1.0.0-SNAPSHOTです。semantic versioning の使用が推奨されます。ただし、別のタイプのバージョン管理を指定することもできます。 code.quarkus.redhat.com がスターターコードをプロジェクトに追加するかどうかを選択します。"STARTER-CODE" でマークされたエクステンションをプロジェクトに追加する場合、このオプションを有効にして、プロジェクト生成時にそのエクステンションのサンプルクラスとリソースファイルを自動的に作成できます。ただし、サンプルコードを提供するエクステンションを追加しない場合、このオプションは生成されたプロジェクトには影響しません。
注記code.quarkus.redhat.com アプリケーションは、自動的に Red Hat build of Quarkus の最新リリースを使用します。ただし、必要に応じて、プロジェクト生成後に pom.xml ファイル内の以前の BOM バージョンに手動で変更することもできますが、これは推奨されません。
使用するエクステンションを選択します。選択したエクステンションは、Quarkus アプリケーションの依存関係として格納されます。Quarkus プラットフォームにより、これらのエクステンションは今後のバージョンとの互換性も確保されます。
重要RESTEasyエクステンションとRESTEasy Reactiveエクステンションは、同じプロジェクト内で使用しないでください。エクステンションの横にある quark アイコン (
) は、そのエクステンションが Red Hat build of Quarkus プラットフォームリリースの一部であることを示します。Red Hat は、同じプラットフォームのエクステンションを使用することを推奨します。これは、エクステンションは一緒にテストおよび検証され、使用とアップグレードが容易になるためです。
"STARTER-CODE" でマークされたエクステンションのスターターコードを自動生成するオプションを有効にできます。
選択を確認するには、Generate your application を選択します。次の項目が表示されます。
- 生成されたプロジェクトを含むアーカイブをダウンロードするためのリンク
- アプリケーションをコンパイルして起動するために使用できるカスタムコマンド
- 生成されたプロジェクトファイルを含むアーカイブをマシンに保存するには、Download the ZIP を選択します。
- アーカイブの内容をデプロイメントします。
展開したプロジェクトファイルが含まれるディレクトリーに移動します。
cd <directory_name>
cd <directory_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 開発モードでアプリケーションをコンパイルして起動するには、次のいずれかの方法を使用します。
Maven の使用:
./mvnw quarkus:dev
./mvnw quarkus:devCopy to Clipboard Copied! Toggle word wrap Toggle overflow Quarkus CLI を使用する:
quarkus dev
quarkus devCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.4.2.1. Red Hat build of Quarkus エクステンションのサポートレベル リンクのコピーリンクがクリップボードにコピーされました!
Red Hat は、code.quarkus.redhat.com で入手して Quarkus プロジェクトに追加できるエクステンションにたいして、さまざまなレベル のサポートを提供しています。各エクステンションの名前の横にあるラベルは、サポートレベルを示します。
Red Hat は、ラベルのないエクステンションの実稼働環境での使用はサポートしません。
Red Hat は、Quarkus エクステンションに対して次のレベルのサポートを提供します。
| サポートレベル | 説明 |
|---|---|
| SUPPORTED | Red Hat は、実稼働環境のエンタープライズアプリケーションにおけるエクステンションの使用に対し、フルサポートを提供します。 |
| TECH-PREVIEW | Red Hat は、テクノロジープレビュー機能のサポート範囲 に基づき、実稼働環境におけるエクステンションの使用に対して限定的なサポートを提供します。 |
| DEV-SUPPORT | Red Hat は、実稼働環境におけるエクステンションの使用をサポートしませんが、Red Hat 開発者が新規アプリケーションの開発で使用するために提供するコア機能をサポートします。 |
| DEPRECATED | Red Hat は、エクステンションを同じ機能を提供する最新のテクノロジーまたは実装に置き換える予定です。 |
| STARTER-CODE | エクステンションのサンプルコードを自動生成できます。 |
各エクステンションの横にある矢印アイコン (⌄) をクリックすると、オーバーフローメニューを展開して、そのエクステンションの他のアクションにアクセスできます。以下に例を示します。
- コマンドラインで Quarkus Maven プラグインを使用して、既存のプロジェクトにエクステンションを追加します。
-
プロジェクトの
pom.xmlファイルにエクステンションを追加するために、XML の抜粋をコピーします。 -
各エクステンションの
groupId、artifactId、versionを取得します。 - エクステンションガイドを開きます。
1.4.3. Red Hat build of Quarkus CLI を使用して Getting Started プロジェクトを作成する リンクのコピーリンクがクリップボードにコピーされました!
Quarkus コマンドラインインターフェイス (CLI) を使用して、getting-started プロジェクトを作成できます。
Quarkus CLI を使用して、プロジェクトの作成、エクステンションの管理、ビルドおよび開発コマンドの実行を行えます。
Quarkus CLI は開発モードのみを対象としています。Red Hat は、実稼働環境での Quarkus CLI の使用をサポートしていません。
前提条件
- Quarkus CLI がインストールされている。詳細は、環境の準備 を参照してください。
- Quarkus 開発者ツールを、エクステンションレジストリー内のエクステンションにアクセスするように設定している。詳細は、Red Hat build of Quarkus エクステンションレジストリークライアントの設定 を参照してください。
手順
プロジェクトを生成するには、コマンドターミナルで次のコマンドを入力します。
quarkus create && cd code-with-quarkus
quarkus create && cd code-with-quarkusCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記'app' サブコマンド (例:
quarkus create app)を指定することもできます。ただし、'app' サブコマンドが指定されていない場合は暗黙的に指定されるため、必須ではありません。このコマンドを使用すると、Quarkus プロジェクトが現在の作業ディレクトリーの 'code-with-quarkus' というフォルダーに作成されます。
デフォルトでは、
groupId属性、artifactId属性、version属性は次のデフォルト値に指定されます。- groupId='org.acme'
- artifactId='code-with-quarkus'
version='1.0.0-SNAPSHOT'
groupId、artifactId、およびversion属性の値を変更するには、quarkus createコマンドを発行し、CLI で次の構文を指定します。groupId:artifactId:versionたとえば
quarkus create app mygroupId:myartifactid:versionです。
注記使用可能なすべての Quarkus コマンドに関する情報を表示するには、
helpパラメーターを指定します。quarkus --help
quarkus --helpCopy to Clipboard Copied! Toggle word wrap Toggle overflow テキストエディターで
src/main/java/org/acme/GreetingResource.javaファイルを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow このファイルには、
/helloエンドポイントに送信したリクエストに対するレスポンスとして、Hello from RESTEasy Reactiveを返す単純な REST エンドポイントが含まれています。
検証
- 開発モードで、アプリケーションのコンパイルと起動を行います。詳細は、Red Hat build of Quarkus Getting Started プロジェクトのコンパイルと起動 を参照してください。
- Quarkus CLI から Getting Started プロジェクトをパッケージ化して実行します。詳細は、Red Hat build of Quarkus Getting Started アプリケーションのパッケージ化と実行 を参照してください。