カテゴリ: Quarkus 更新日: 2026/02/10

Quarkusのビルドプロファイルを完全理解!dev・test・prodを使いこなす方法を初心者向けに解説

Quarkusのビルドプロファイル(dev/test/prod)を使いこなす
Quarkusのビルドプロファイル(dev/test/prod)を使いこなす

先生と生徒の会話形式で理解しよう

生徒

「Quarkusで開発していると、devとかprodってよく聞くんですが、正直違いがよくわかりません…」

先生

「Quarkusではビルドプロファイルという仕組みを使って、開発用・テスト用・本番用で設定を切り替えられるんですよ。」

生徒

「設定を切り替えるって、application.propertiesを分ける感じですか?」

先生

「その考え方は近いですね。Quarkusではもっとシンプルに管理できます。順番に見ていきましょう。」

1. Quarkusのビルドプロファイルとは何か

1. Quarkusのビルドプロファイルとは何か
1. Quarkusのビルドプロファイルとは何か

Quarkusのビルドプロファイルとは、開発・テスト・本番といった「実行環境」に合わせて、アプリケーションの動作や設定を自動で切り替えるための賢い仕組みです。 Java開発では、自分のPCでコードを書く時(開発環境)と、プログラムが正しく動くか確認する時(テスト環境)、そして実際にユーザーに公開する時(本番環境)で、接続するデータベースの場所やログの出し方を変える必要があります。

プログラミング未経験の方でもイメージしやすいよう、身近な例で例えてみましょう。

例:スマートフォンの「モード切り替え」
  • 開発モード(dev):画面が明るく、操作ガイドが常に表示されている状態。
  • テストモード(test):特定の機能が故障していないかチェックするための診断状態。
  • 通常モード(prod):余計な通知を抑え、バッテリー消費を最小限にした完成版の状態。

Quarkusには、最初からdev(開発)test(テスト)prod(本番)という3つのプロファイルが標準装備されています。 これらがあるおかげで、開発者は「今は本番用の設定だったかな?」と不安になる必要がなく、コマンド一つで安全に環境を使い分けることができるのです。

ポイント:ビルドプロファイルを使うことで、設定ファイルの書き換えミスによる「本番環境のデータを間違えて消してしまった!」というような重大な事故を未然に防ぐことができます。

2. devプロファイルの特徴と役割

2. devプロファイルの特徴と役割
2. devプロファイルの特徴と役割

devプロファイルは、Quarkusでの開発作業中に使われるプロファイルです。 開発効率を最大化することを目的としており、ホットリロード機能が有効になります。 ソースコードを変更すると、自動的にアプリケーションが再読み込みされるため、 Java開発初心者でも試行錯誤しながら学習しやすくなっています。

また、devプロファイルでは詳細なログが出力されます。 エラーが起きた場合でも原因を追いやすく、Quarkusの仕組みを理解する助けになります。 ローカル開発環境では、ほぼ常にdevプロファイルを使うことになります。

3. testプロファイルの特徴と役割

3. testプロファイルの特徴と役割
3. testプロファイルの特徴と役割

testプロファイルは、JUnitなどを使ったテスト実行時に使われるビルドプロファイルです。 Quarkusではテスト用の設定を本番環境と分離できるため、安全にテストを行えます。 データベース接続先をテスト用に切り替えたり、外部サービスとの通信を無効化したりできます。

Javaでの自動テストを学ぶうえでも、testプロファイルの存在は重要です。 本番環境と同じ設定でテストをしてしまう事故を防げる点も、Quarkusの大きな魅力です。

4. prodプロファイルの特徴と役割

4. prodプロファイルの特徴と役割
4. prodプロファイルの特徴と役割

prodプロファイルは、本番環境で実際にユーザーが利用する際に使われるプロファイルです。 パフォーマンスと安定性が最優先され、不要なログや開発向け機能は無効になります。 Quarkusは高速起動と低メモリ消費を強みとしており、prodプロファイルでその性能が最大限に発揮されます。

GraalVMによるネイティブイメージ生成も、prodプロファイルを前提として行われることが多いです。 クラウド環境やコンテナ環境でQuarkusを使う場合、このプロファイルが中心になります。

5. application.propertiesでのプロファイル設定

5. application.propertiesでのプロファイル設定
5. application.propertiesでのプロファイル設定

Quarkusではapplication.propertiesファイルにプロファイルごとの設定をまとめて記述できます。 同じキーでも、どのビルドプロファイルで使われるかによって値を切り替えられるのが特徴です。 Javaの設定管理に慣れていない初心者でも直感的に扱えます。


# 共通設定
quarkus.http.port=8080

# devプロファイル用設定
%dev.quarkus.log.level=DEBUG

# testプロファイル用設定
%test.quarkus.log.level=INFO

# prodプロファイル用設定
%prod.quarkus.log.level=WARN

このように記述することで、dev、test、prodそれぞれの環境に応じた設定が自動的に適用されます。 application.propertiesを分割する必要がないため、管理が非常に楽になります。

6. ビルドプロファイルを指定して起動する方法

6. ビルドプロファイルを指定して起動する方法
6. ビルドプロファイルを指定して起動する方法

Quarkusではコマンド実行時にビルドプロファイルを指定できます。 MavenやGradleを使ったJavaプロジェクトでも、特別な設定は不要です。 開発時にはdev、本番ではprodを明示的に指定することで、意図しない設定ミスを防げます。


# devモードで起動
./mvnw quarkus:dev

# prodプロファイルで起動
java -jar target/quarkus-app/quarkus-run.jar

devモードは自動的にdevプロファイルになります。 一方で本番実行時はprodプロファイルが使われるため、Quarkusの設計思想が自然に身につきます。

7. ビルドプロファイルを使いこなすメリット

7. ビルドプロファイルを使いこなすメリット
7. ビルドプロファイルを使いこなすメリット

Quarkusのビルドプロファイルを使いこなすことで、Javaアプリケーション開発の品質が大きく向上します。 環境ごとの設定ミスを防ぎ、開発から本番まで一貫した運用が可能になります。 特にクラウド環境やコンテナ環境では、この仕組みが大きな武器になります。

初心者のうちからdev、test、prodの考え方に慣れておくことで、 実務レベルのJava開発にもスムーズに移行できます。 Quarkusは学習と実践を両立しやすいフレームワークと言えるでしょう。

関連記事:
カテゴリの一覧へ
新着記事
New1
Quarkus
Quarkusのフォーム認証を基礎から解説!初心者向けセキュリティ入門ガイド
New2
Micronaut
MicronautプロジェクトをGradleで管理する基礎!build.gradleの役割を解説
New3
Micronaut
LinuxでMicronautをセットアップする方法!パッケージ管理とGradle連携
New4
Java
Javaのswitch文を徹底解説!case・defaultの書き方と実例まとめ
人気記事
No.1
Java&Spring記事人気No1
Quarkus
Quarkusプロジェクト構成の基本を完全解説!初心者でも迷わない「どこに何を書くか」ガイド
No.2
Java&Spring記事人気No2
Quarkus
QuarkusとMicronautとHelidonを徹底比較!軽量Javaフレームワークの違いを初心者向けに解説
No.3
Java&Spring記事人気No3
Quarkus
Quarkusのセキュリティ基礎を初心者でもわかるように解説!
No.4
Java&Spring記事人気No4
Micronaut
MicronautとSpring Bootの違いとは?アーキテクチャ比較で速さの秘密を理解する
No.5
Java&Spring記事人気No5
Quarkus
Quarkusでマイクロサービス開発が加速する理由を徹底解説!Java初心者でも分かるクラウドネイティブ
No.6
Java&Spring記事人気No6
Quarkus
Quarkusの開発環境構築で躓きやすいポイントを完全解説!初心者でも安心して始めるためのチェックガイド
No.7
Java&Spring記事人気No7
Java
Javaのboolean型の使い方を完全ガイド!真偽値と条件分岐の基本
No.8
Java&Spring記事人気No8
Micronaut
MicronautのAOPが高速な理由とは?コンパイル時AOPの仕組みを初心者向けに徹底解説