モジュール
IntelliJ IDEA では、モジュールはあらゆるプロジェクトに不可欠な要素です。モジュールはプロジェクト作成時に自動的に作成されます。プロジェクトには複数のモジュールを含めることができ、新しいモジュールを追加したり、グループ化したり、不要なモジュールをアンロードしたりできます。
通常、モジュールは 1 つまたは複数のコンテンツルートとモジュールファイルで構成されますが、モジュールはコンテンツルートがなくても存在できます。コンテンツルートは、コードを保存するフォルダーです。通常、ソースコード、単体テスト、リソースファイルなどのサブフォルダーが含まれます。モジュールファイル (.iml ファイル) は、モジュールの構成を維持するために使用されます。
モジュールを使用すると、複数のテクノロジーとフレームワークを 1 つのアプリケーションに組み合わせることができます。IntelliJ IDEA では、プロジェクトごとに複数のモジュールを作成し、それぞれが独自のフレームワークを管理できます。詳細については、フレームワークを追加する (ファセット) を参照してください。

IntelliJ IDEA モジュールと Java モジュール
バージョン 9 では、Java は Java プラットフォームモジュールシステム(英語)を導入しました。IntelliJ IDEA にはすでにモジュールの概念がありました。すべての IntelliJ IDEA モジュールは独自のクラスパスを構築しました。新しい Java プラットフォームモジュールシステムの導入により、IntelliJ IDEA モジュールと module-info.java を使用して構成された新しい Java 9 モジュールの 2 つのモジュール方式が登場しました。このドキュメントセクションでは、IntelliJ IDEA モジュールについて説明します。
Java 9 サポートの詳細については、IntelliJ IDEA 2017.1 での Java 9 モジュールのサポート(英語)および Java 9 および IntelliJ IDEA(英語) のブログ投稿を参照してください。
複数のモジュールを持つプロジェクト
IntelliJ IDEA では、1 つのプロジェクトに複数のモジュールを含めることができます。すべてのモジュールが Java である必要はありません。Java アプリケーション用のモジュールと、Rails 上の Ruby アプリケーション用、あるいはサポートされているその他のテクノロジー用のモジュールを 1 つずつ含めることが可能です。
クライアント側とサーバー側で構成されるアプリケーションは、2 モジュールプロジェクトの良い例です。
新しいモジュールをプロジェクトに追加する
プロジェクトツールウィンドウで最上位ディレクトリを選択します。ツールバーの
をクリックするか、Alt+Insert を押します。そして、モジュールを選択します。
新規モジュールウィザードが開きます。
左側のリストから、アプリケーションで使用する言語を選択します。
IntelliJ IDEA ですぐに使用できない言語 (Python や PHP など) を使用する場合は、プラグインでさらに追加をクリックして必要なオプションを選択します。
IDE は、必要な言語プラグインを選択してインストールできるダイアログを開きます。その後、ダイアログを閉じて、新しいプロジェクトの構成を続けることができます。
新しいモジュールに名前を付けます。
プロジェクトで使用するビルドシステムを選択します: ネイティブ IntelliJ ビルダー、Maven、Gradle。
Gradle の場合、ビルドスクリプトの言語(Groovy または Kotlin)も選択する必要があります。
使用する JDK を JDK リストから選択します。プロジェクト SDK を使用するか、新しい SDK を指定できます。
作成をクリックします。
既存のモジュールをインポートする
別のプロジェクトから .iml ファイルを追加することにより、モジュールをプロジェクトにインポートできます。
メインメニューで、
に移動します。開いたダイアログで、インポートするモジュールの .iml ファイルのパスを指定し、オープンをクリックします。
そうすることで、ファイルを物理的に移動することなく、プロジェクトに別のモジュールをアタッチすることになります。モジュールを 1 つのフォルダーに配置する必要がない場合は、モジュールのインポートが完了し、プロジェクトでの作業を通常どおり開始できます。
既存のソースからモジュールをインポートする
プロジェクトが外部モデルからのものである場合、または必ずしもエクスポートされたプロジェクトではない既存のソースコードからモジュールを作成する場合は、これらの手順を使用してプロジェクトをモジュールとしてインポートします。
メインメニューで、
に移動します。ソース、ライブラリ、その他のアセットが配置されているディレクトリを選択し、オープンをクリックします。
開いたダイアログで、既存のソースコードから新しいモジュールを作成する場合は、既存のソースからモジュールを作成するを選択します。
それ以外の場合は、外部モデルのプロジェクトをインポートを選択し、プロジェクトが使用する外部モデルを選択して、ウィザードの手順に従います。
モジュールのグループ化
IntelliJ IDEA では、モジュールを論理的にグループ化できます。複数のモジュールを含む大規模なプロジェクトの場合、グループ化すると、プロジェクト内を簡単に移動できます。モジュールグループはネストできます。グループには他のサブグループを含めることができます。
新しいモジュールグループを作成する (非推奨)
以前のバージョン(2017.2 以前)では、IntelliJ IDEA は明示的なグループを使用してモジュールを結合していました。手動モジュールグループを構成した場合は、それ以降のバージョンの IDE で引き続き使用できます。または、モジュールグループを変換し、代わりに修飾名を使用することもできます。
プロジェクトツールウィンドウ(Alt+1)で、グループ化するモジュールを選択します。
プロジェクト構造ダイアログ(Ctrl+Alt+Shift+S)のモジュールページで行うこともできます。
コンテキストメニューから
を選択します。新しいグループに名前を付けて、OK をクリックします。
新しいグループが作成され、
アイコンが表示されます。
選択したモジュールをグループから除外するにはグループに属さない、モジュールをグループに追加するにはこのグループへ、別のグループに新しいグループを作成するには新規サブグループへを選択します。
モジュールグループを修飾名に変換 (非推奨)
メインメニューで、
に移動します。次のダイアログで、新しいモジュール名を確認し、必要に応じて調整します。
変更を適用し、ダイアログを閉じます。
モジュールを完全修飾名でグループ化する
IntelliJ IDEA 2017.3 以降では、完全修飾名を使用してモジュールをグループ化しています。例: すべての CDI モジュールをグループ化する場合は、名前に cdi
接頭辞を追加します。
プロジェクト構造ダイアログ Ctrl+Alt+Shift+S を開き、モジュールをクリックします。
グループ化するモジュールを選択し、コンテキストメニューを開き、モジュール名の変更をクリックします。
接頭辞を指定して変更を適用します。
専用のモジュール名の変更アクションを使用せずに手動でモジュール名を編集する場合は、接頭辞とモジュール名の間にドット(
.
)を区切り文字として使用してください。たとえば、モジュール名をapplication
からcdi.application
に変更すると、正しくcdi
カテゴリに分類されます。プロジェクト構造ダイアログで同じレベルのすべてのモジュールを表示するには、モジュールのフラット表示コンテキストメニューオプションを使用します。

関連ページ:

モジュールをアンロードする
IntelliJ IDEA の動作を高速化するために、現時点では必要のないモジュールを一時的に確保 (アンロード) することができます。IDE は、コードの検索やリファクタリング、またはプロジェクトのコンパイル時に、アンロードされたモジュールを無視します。モジュールをアンロードするときは、ローカルで実行します。アンロードされたモジュールに関する情報は、バージョン管理を通じて共有されません。モジュールを手動でアンロードするプロジェクトツールウィンドウ (または) でモジュールを右クリックし、モジ...

フレームワークを追加する (ファセット)
フレームワーク固有のアプリケーションを開発するために、IntelliJ IDEA はファセットを備えています。ファセットにはライブラリ、依存関係、テクノロジが含まれており、それらによってフレームワーク固有の設定を構成するための追加の UI 要素が提供されます。すべてのファセットがそのまま使用できるわけではないことに注意してください。それらの一部を使用できるようにするには、最初に必要なフレームワークのプラグインをインストールする必要があります。既存のプラグインの詳細については、「JetBrains...

プロジェクトの構成
IntelliJ IDEA での開発はプロジェクトから始まります。プロジェクトを使用すると、コードとリソースを単一のユニットに整理して、保存と共有が簡単になります。簡単に言うと、プロジェクトは、アプリケーションを構成するすべてのものを保持するディレクトリです。典型的なプロジェクトには、通常、一連の設定と 1 つまたは複数のモジュールがあります。IntelliJ IDEA のプロジェクトは、モジュールをまとめて保持し、モジュール間の依存関係を提供し、共有構成を格納するシェルです。モジュールは、モジ...

Maven
IntelliJ IDEA は Maven との完全な統合をサポートしており、ビルドプロセスの自動化に役立ちます。新しい Maven プロジェクトを作成したり、既存のプロジェクトを開いて同期したり、既存の IntelliJ IDEA プロジェクトに Maven サポートを追加したり、マルチモジュールプロジェクトを設定・管理したりできます。Maven プロジェクトを作成して WSL 環境に保存したり、WSL ファイルシステムから開いたりすることもできます。詳細については、WSL のセクションを参照してくだ...

Gradle
IntelliJ IDEA は Gradle との完全な統合をサポートしており、ビルドプロセスの自動化に役立ちます。新しい Gradle プロジェクトを簡単に作成したり、既存のプロジェクトを開いて同期したり、複数のリンクされたプロジェクトを同時に操作したり、管理したりできます。Gradle プロジェクトを作成して WSL 環境に保存したり、WSL ファイルシステムから開いたりすることもできます。詳細については、WSL のセクションを参照してください。新規 Gradle プロジェクトを作成する新規プロジ...

SDK
ソフトウェア開発キットまたは SDK は、特定のソフトウェアフレームワーク用のアプリケーションを開発するために必要なツールのコレクションです。例: Java でアプリケーションを開発するには、Java SDK(JDK) が必要です。SDK には、バイナリ、バイナリのソースコード、ソースコードのドキュメントが含まれています。JDK ビルドにはアノテーションも含まれています。一般に、SDK はグローバルです。つまり、1 つの SDK を複数のプロジェクトやモジュールで使用できます。新しいプロジェクトを作...