アノテーションプロセッサの設定
コンパイル時にカスタムアノテーションを処理するように IntelliJ IDEA を構成できます。 アノテーションを処理するためにコンパイル時にコードを生成するプロセスは、 アノテーション処理と呼ばれます。
アノテーションプロセッサは、アノテーションに基づいてコードを検証、生成、変更でき、記述するコードの量を大幅に削減するのに役立ちます。 アノテーションプロセッサはプロジェクト内に保存できます。 この場合 IntelliJ IDEA はクラスパスから取得します。 アノテーションプロセッサがプロジェクトの外部に保存されている場合は、アノテーションプロセッサJARのパスを手動で追加する必要があります。
Maven または Gradle プロジェクトのビルドスクリプトを通じてアノテーションプロセッサーを追加すると、IntelliJ IDEA は自動的にアノテーション処理を有効にし、適切なパスをアノテーションプロセッサー設定に追加します。
アノテーションプロファイルの処理
アノテーションプロファイルは、アノテーション処理の構成オプションのセットです。 オプションには、アノテーション処理出力の場所、特定のアノテーションプロセッサー、それらのパラメーターが含まれます。
デフォルトのプロファイルは常に存在します。 プロジェクトを構成するすべてのモジュールはデフォルトのプロファイルを使用します。 新しいプロファイルを作成し、その下に複数のモジュールをグループ化し、指定したモジュールのグループに対してアノテーション処理を構成できます。
アノテーションプロファイルを構成する
Ctrl+Alt+S を押して設定を開き、 を選択します。
アノテーションプロセッサー ページで、ページの下部にある
をクリックします。
新規プロファイルの作成 ダイアログで、プロファイル名を指定します。

作成したプロファイルにモジュールを移動するには、必要なモジュールを選択し、
(F6 )をクリックして、ターゲットプロファイルを選択します。
プロファイルのアノテーション処理設定
目的のアノテーションプロファイルを選択します。
アノテーション処理を有効にする を選択し、以下のオプションを構成します。
プロジェクトクラスパスからプロセッサーを取得する: プロジェクトの一部としてカスタムアノテーションプロセッサーを使用する場合、またはプロセッサーがライブラリとして対応するすべてのモジュールにアタッチされた .jar ファイルに保存されている場合は、このオプションを有効のままにします。
プロセッサーパス: このオプションを選択し、プロジェクトの外部に保存されている場合は、アノテーションプロセッサーへのパスを指定します。
build.gradle ファイルで
annotationProcessor依存関係が指定されている Gradle プロジェクトの場合、このフィールドには、Gradle プロジェクトをインポートするときに Gradle によって使用されるアノテーションプロセッサーへのパスが含まれます。 Gradle でそのようなプロジェクトをビルドすると、IntelliJ IDEA は プロジェクト ツールウィンドウの ビルド ディレクトリ内に適切なサブディレクトリを生成します。
Maven プロジェクトの場合、フィールドには pom.xml で指定されたアノテーションプロセッサーへのパスが含まれます。
--processor-module-path コンパイラーオプションを使用(Java 9 以降対象): 指定されたパスは、モジュールパス(パッケージ化された Java モジュールを含む JAR またはディレクトリのパス)であると想定します。 モジュールパスから検出して実行するには、アノテーションプロセッサーを Java モジュールとしてパッケージ化し、モジュール宣言で ServiceLoader に登録する必要があります。
次の場所に生成されたソース関連を保管: モジュール出力ディレクトリ および モジュールコンテントルート オプションを使用して、アノテーションプロセッサーによって生成されたソースが保管される場所を定義し、プロファイルのデフォルトの動作をオーバーライドします。
本番ソース および テストソース: これらのフィールドを使用して、アノテーションプロセッサーの出力が格納されるディレクトリの名前を指定します。 フィールドが空白のままの場合、アノテーションプロセッサーによって生成されたファイルはプロジェクト出力ディレクトリに保存されます。 名前を指定すると、この名前のディレクトリが自動アノテーション処理後にコンテンツルートに作成されます。
プロセッサーの完全修飾名: 起動するプロセッサーの完全修飾名を指定します。 何も指定されていない場合、IntelliJ IDEA は指定された場所で検出されたすべてのプロセッサーを起動します。
アノテーションプロセッサーのオプション: この領域を使用して、プロセッサー実行オプションを
-key=valueまたはkey=valueとして構成します。 スペースを使用して個々のオプションを区切ります。