Gradle プロジェクト
IntelliJ IDEA では、 Gradle(英語) プロジェクトを管理できます。 リンク 、プロジェクトの無視、 プロファイルの操作、Gradle プロジェクトと IntelliJ IDEA プロジェクトの変更の同期を行うことができます。 Gradle コンポジットビルド、Gradle ソースセット、ビルドおよび実行アクションを構成することもできます。
build.gradle ファイルに移動する
Gradle ツールウィンドウで、リンクされたプロジェクトを右クリックします。
コンテキストメニューから Gradle 構成を開く F4 を選択します。
IntelliJ IDEA は適切な Gradle 構成ファイルに移動し、関連する build.gradle ファイルがエディターで開きます。
マルチモジュールプロジェクト内を移動する
IntelliJ IDEA は、マルチモジュール Gradle プロジェクトの親ビルドスクリプト内のサブプロジェクトへのナビゲーションをサポートしています。
Navigate inside the build script
親プロジェクトの build.gradle を開きます。
サブプロジェクトに移動するには、 Ctrl+Click ショートカットを使用します。

Alt+F7 を使用してサブプロジェクトの使用箇所を表示し、 検索 ツールウィンドウで結果を確認することもできます。

リンクされた Gradle プロジェクトのリンクを解除する
Gradle プロジェクトのリンクを解除すると、IntelliJ IDEA は関連するすべてのモジュールとコンテンツルートを削除し、 Gradle ツールウィンドウから Gradle プロジェクトを削除してその同期を停止します。 現在の IntelliJ IDEA プロジェクトから以前にリンクされた Gradle プロジェクトを完全に削除する必要がある場合、役に立つかもしれません。
Gradle ツールウィンドウで、リンクされたプロジェクトを右クリックします。
コンテキストメニューから Gradle プロジェクトのリンク解除 (Delete )を選択します。 あるいは、リンクされたプロジェクトを選択してツールウィンドウのツールバーの
をクリックすることもできます。
IntelliJ IDEA プロジェクト ツールウィンドウからプロジェクトを削除したくない場合は、 Gradle プロジェクトのインポート ポップアップで、モジュールに対するチェックボックスをオフにします。
OK をクリックします。
プロジェクトをリンクバックする必要がある場合は、 プロジェクト ツールウィンドウでプロジェクトの build.gradle ファイルを右クリックするか、Kotlin プロジェクトの場合は build.gradle.kts を選択し、 Gradle プロジェクトのインポート を選択します。
Gradle プロジェクトを無視する
Gradle プロジェクトを無視 オプションを使用して、Gradle プロジェクトを非アクティブ化できます。 この場合、IntelliJ IDEA は無視された Gradle プロジェクトとサブプロジェクトを Gradle ツールウィンドウに保持しますが、プロジェクトへのそれらのインポート (モジュール、コンテンツルート、タスクなど) を停止します。 ただし、IntelliJ IDEA は無視されたプロジェクトを現在のプロジェクトと同期します。 buildSrc などの無関係なサブプロジェクトをスキップする必要がある場合に役立つ可能性があります。
Gradle ツールウィンドウで、無視するプロジェクトを右クリックします。
コンテキストメニューから Gradle プロジェクトを無視 を選択します。
開いたウィンドウで、非アクティブ化するプロジェクトとモジュールを選択し、 OK をクリックします。
Gradle プロジェクトまたはモジュールをアクティブにする場合は、コンテキストメニューから Gradle プロジェクトを無視する を選択します。
孤立モジュール
孤立モジュールは、次の場合にインポートプロセス中に削除された IDE モジュールです。
build.gradle ファイルのモジュールを手動で削除してから、プロジェクトを再インポートしたとき。
Gradle ツールウィンドウのモジュールで プロジェクトを無視アクションを使用してから、プロジェクトを再インポートしたとき。
これらすべての場合において、IntelliJ IDEA は、 削除されたモジュールを復元するように要求します。

孤立モジュール ダイアログで復元したいものを選択できます。

通常、これらは IDE モジュール設定を含む .iml ファイルのみであるため、モジュールを復元する必要はありません。 内部で指定されたユーザー定義の設定がある場合にのみ、復元することができます。
リンクされた Gradle プロジェクトを同期する
Gradle プロジェクトを 開くと、同期が自動的に行われます。 また、IntelliJ IDEA がビルドスクリプトに対する外部の変更 (VCS の更新や IDE 外で行われた編集など) を検出すると、関連するプロジェクトが自動的に再読み込みされます。
必要に応じて、プロジェクトの同期を手動でトリガーできます。
Gradle ツールウィンドウで、リンクされたプロジェクトを右クリックします。
コンテキストメニューから 同期 Gradle プロジェクト
を選択します。
このアクションを呼び出すと、IntelliJ IDEA は Gradle ツールウィンドウでプロジェクト構造を解析します。
IntelliJ IDEA はプロジェクトの一部だけを再ロードすることはできません。モジュールと依存関係を含むプロジェクト全体を再ロードします。
プロジェクト構造 ダイアログ (Ctrl+Alt+Shift+S) で依存関係を構成すると、依存関係は IntelliJ IDEA プロジェクト ツールウィンドウにのみ表示され、 Gradle ツールウィンドウには表示されません。 IntelliJ IDEA は Gradle 構成を唯一の信頼できる情報源と見なすため、次回プロジェクトを再インポートするときに、IntelliJ IDEA は追加された依存関係を削除することに注意してください。
ステータスバーの
をクリックして、 ビルドツールウィンドウに同期の結果を表示します。
自動再読み込みを構成する
設定 ダイアログ(Ctrl+Alt+S )で、 に移動します。
または、 Gradle ツールウィンドウで
をクリックし、 自動同期の設定 オプションを選択します。

ビルドツール 設定で、次のオプションを指定します:

ビルドスクリプトの変更後にプロジェクトを同期する: このオプションはデフォルトで選択されています。 自動同期を無効にして同期プロセスを手動で制御する場合は、このチェックボックスをオフにします。
任意の変更: build.gradle に変更を加えた後、または外部で変更を加えた後にプロジェクトを自動的に同期する場合は、このオプションを選択します。
エディターで Gradle ビルドスクリプトを手動で変更するたびに、変更を同期する必要があります。 IntelliJ IDEA は、エディターの右側に、プロジェクト (Ctrl+Shift+O) の作成を Gradle の変更を同期 に提案する通知アイコンを表示します。
任意の変更 オプションを使用すると、IntelliJ IDEA はすべての変更を自動的に同期します。
外部の変更: このオプションを選択すると、IntelliJ IDEA は、VCS の変更と IDE 外部のビルドファイルへの変更後にのみ、プロジェクトを自動的に同期します。
Gradle コンポジットビルドの構成
コンポジットビルドの構成を開始する前に、Gradle バージョン 4.5 以降がプロジェクト用に構成されていることを確認してください。
settings.gradle ファイルを使用して、 Gradle コンポジットビルド(英語)に Gradle ビルドを含めることができます。
エディターで settings.gradle ファイルを開きます。
includeBuildコマンドを使用して、依存関係としてプロジェクトに追加するビルドの場所を指定します。
Gradle ツールウィンドウを使用してコンポジットビルドを構成することもできます。
Gradle ソースセットを使用する
IntelliJ IDEA を使用すると、Gradle プロジェクトの解決に Gradle ソースセット(英語)を使用できます。 ソースセットは、IntelliJ IDEA プロジェクトのモジュールとして扱われます。 カスタムソースセットを宣言すると、IntelliJ IDEA はそれをモジュールとしてプロジェクトに追加します。
Gradle プロジェクトを作成すると、IntelliJ IDEA は、 main と test の 2 つのソースセットを含むメイン ソースセット ディレクトリを自動的に作成します。 IntelliJ IDEA は、 Gradle ツールウィンドウの 依存関係 ノードのコンパイルおよびランタイム構成も表示します。

カスタムソースセットを追加する
エディターで gradle.build ファイルを開きます。
カスタムソースセットを宣言します(この例では api です)。
sourceSets { api } dependencies { compile sourceSets.api.output }(このソースセットには、実装のないインターフェースが含まれています。 インターフェースの実装は、デフォルトの main ソースセットにあります。)
Gradle ツールウィンドウを開くと、IntelliJ IDEA により
apiコンパイルおよびランタイム構成が追加されたことが確認できます。
テスト ソースセットには、適切な依存関係が含まれています。 デフォルトの main ソースセットは、 api ソースセットの出力に対してコンパイル依存関係を持っていることに注意してください。
メインメニューで、 ファイル | プロジェクト構造 Ctrl+Alt+Shift+S に移動し、プロジェクト構造を開きます。 すべてのソースセットが個別のモジュールとして表現され、それらが 1 つのモジュールにグループ化されていることに注意してください。 テスト モジュールをクリックして 依存関係 タブを選択すると、ソースセットの依存関係一覧が表示されます。

カスタムテストにソースセットを使用する
カスタムテストを追加して、ソースセット機能を使用してメインテストとは別に実行することができます。
カスタムソースセットを宣言するのと同じ方法でソースセットを宣言します。 ソースセットの名前に加えて、出力ディレクトリと、宣言されたテストを実行するタスクを指定します。 例: 統合テスト
integrationTestを宣言します。sourceSets { integrationTest { java { srcDir 'src/integrationtest/java' } resources { srcDir 'src/integrationtest/resources' } compileClasspath += sourceSets.main.runtimeClasspath } } task integrationTest(type: Test) { description = "Runs Integration Tests" testClassesDirs = sourceSets.integrationTest.output.classesDirs classpath += sourceSets.integrationTest.runtimeClasspath }Gradle ツールウィンドウで、 をクリックします。
表示された一覧で、
integrationTestをダブルクリックして実行します。
Gradle プロジェクトにパッケージ接頭辞を追加する
Gradle プロジェクトでパッケージ接頭辞を使用する場合は、 build.gradle ファイルで指定します。 そうすれば、プロジェクトを再インポートしたときにすべてが保存されます。
詳細については、 https://github.com/JetBrains/gradle-idea-ext-plugin を参照してください。
build.gradle ファイルを開きます。
パッケージの接頭辞をサポートするために次のプラグインを追加します。
plugins { id "org.jetbrains.gradle.plugin.idea-ext" version "0.5" }パッケージ接頭辞を追加します。 例: 次の一連のソースセットがあります。
sourceSets { main.java.srcDirs = [] main.java.srcDirs += "src" main.java.srcDirs += "src/main/java" main.java.srcDirs += "../other-root/src/main/java" }以下のコードとパッケージ接頭辞(この場合は 「org.example」)を追加します。
idea { module { settings { packagePrefix["src"] = "org.example" packagePrefix["src/main/java"] = "org.example" packagePrefix["../other-root/src/main/java"] = "org.example" } } }変更を再インポートするか、 auto-import を使用してください。
build.gradle ファイルで IDE 固有の設定を指定する
gradle-idea-ext(英語) プラグインを使用すると、プロジェクトのエンコーディングなどのプロジェクト設定、および build.gradle ファイル内のプロパティファイルのエンコーディングを記述できます。
build.gradle ファイルを開きます。
エンコーディング設定をサポートするために次のプラグインを追加します。
plugins { id "org.jetbrains.gradle.plugin.idea-ext" version "0.5" }次のコードでプロジェクトのエンコーディングを記述してください。
import org.jetbrains.gradle.ext.EncodingConfiguration.BomPolicy idea { project { settings { encodings { encoding = 'windows-1251' bomPolicy = BomPolicy.WITH_NO_BOM properties { encoding = '<System Default>' transparentNativeToAsciiConversion = false } mapping['../sample-gradle-free/module'] = 'windows-1251' mapping['module'] = 'windows-1251' mapping['module2/src/main/java'] = 'windows-1251' } } } }変更を再インポートするか、 auto-import を使用してください。
buildSrc を使用する
複数の Java、Groovy、Kotlin クラスを含む大きな Gradle スクリプトがある場合は、そのようなクラスを buildSrc(英語) ディレクトリに移動して、メインの Gradle スクリプトから参照できます。 この場合、 build.gradle ファイルの可読性を確保します。
既存の
buildSrcがない場合は、Gradle の モジュール としてメイン プロジェクトに追加してください。
メインの build.gradle ファイルをエディターで開き、必要なクラスを main サブディレクトリ内の buildSrc ディレクトリへ移動します。

プロジェクトの build.gradle ファイルからタスクを実行します。

ビルドおよび実行アクションを構成する
デフォルトでは、IntelliJ IDEA はプロジェクトの構築と実行に Gradle を使用します。
プロジェクト( )をビルドすると、IntelliJ IDEA は Gradle を使用して対応するタスクを呼び出します。 Gradle は、 メニューから 実行 および デバッグ アクションも実行します。 ホットスワップもトリガされ、デバッグプロセス中にクラスが再ロードされます。
リンクプロジェクトがある場合は、各リンクプロジェクトのビルド方法を設定できます。
設定 ダイアログ (Ctrl+Alt+S) で、 に進みます。
Gradle 設定ページの Gradle プロジェクト セクションで、必要な Gradle プロジェクトを選択します。
ビルドおよび実行に使用リストで適切なオプションを選択し、 OK をクリックして変更を保存します。
IntelliJ IDEA を使用して Gradle プロジェクトをビルドする場合は、明示的に指定する必要があります。
IntelliJ IDEA にビルドを委譲する
純粋な Java または Kotlin プロジェクトを構築するために IntelliJ IDEA を使用すると便利かもしれません。 IntelliJ IDEA はインクリメンタルビルドをサポートしているため、ビルドプロセスをスピードアップできます。 ただし、IntelliJ IDEA コンパイラーは Gradle プロジェクトビルド処理の一部をサポートしていないため、プロジェクトを正しくビルドする際に問題が生じる可能性があります。
Gradle ツールウィンドウで
をクリックします。
または、 設定 ダイアログ(Ctrl+Alt+S )で、 に移動します。
Gradle ページで、 ビルドおよび実行に使用 リストから Intellij IDEA を選択します。

テストを使用して実行する オプションは有効なままで、すべてのビルドと実行アクションを IntelliJ IDEA に委譲した場合でも、テストの実行方法を選択できます。
OK をクリックします。
Gradle プロジェクトをビルドすると、IntelliJ IDEA でビルドされます。