IntelliJ IDEA 2018.3 Help

モジュールの操作

IntelliJ IDEAでは、モジュールはあらゆるプロジェクトの重要な部分です - それはプロジェクトと一緒に自動的に作成されます。プロジェクトには複数のモジュールを含めることができます - 新しいモジュールを追加し、それらをグループ化し、現在必要のないモジュールをアンロードすることができます。

モジュールはコンテンツ・ルートとモジュールファイルで構成されています。コンテンツ・ルートは、コードを保存するフォルダーです。通常、ソースコード、単体テスト、リソースファイルなどのサブフォルダーが含まれています。モジュールファイル( .iml ファイル)は、コンテンツまたはソースのルート、依存関係、ファセット内のフレームワーク固有の設定など、モジュール構成を保持するために使用されます。

コンテンツ・ルートの設定

IntelliJ IDEAのコンテンツは、ソースコード、ビルドスクリプト、単体テスト、およびドキュメントを含むファイルのグループです。これらのファイルは通常、階層構造になっています。最上位フォルダーはコンテンツ・ルートと呼ばれます。

モジュールには通常、1つのコンテンツルートがあります。コンテンツルートを追加することができます。たとえば、コードがコンピューター上の別の場所に格納されている場合には、これは便利です。

同時に、モジュールはコンテンツ・ルートなしで存在することができます。この場合、それらを他のモジュールの依存関係の集合として使用できます。

IntelliJ IDEAのコンテンツ・ルートディレクトリーに Directory アイコンが表示されます。

新しいコンテンツ・ルートを追加する

  1. メインメニューからファイル | プロジェクト構造Ctrl+Shift+Alt+S)を選択し、プロジェクト設定 | モジュールをクリックします。

  2. 必要なモジュールを選択してから、ダイアログの右側にあるソースタブを開きます。

  3. コンテンツ・ルートの追加をクリックして、新しいコンテンツ・ルートとして追加するフォルダーを指定します: OKをクリック

    Adding a new content root

コンテンツ・ルートを削除するには、the Unmark root buttonをクリックします。IntelliJ IDEAは選択されたルートを通常のフォルダーとしてマークします。フォルダー自体とその内容は削除されません。

フォルダーカテゴリ

コンテンツルート内のフォルダーは、複数のカテゴリに割り当てることができます。

Sources root

ソースルート

コンパイルする必要がある製品コードが含まれています

Generated Sources Root

生成されたソースルート

IDEは、「生成されたソース」ルートフォルダー内のファイルは手動で書き込まれるのではなく自動的に生成され、再生成できると見なします。

Test Sources Root

テストソースルート

これらのフォルダーは、テストに関連するコードを本番コードとは別に保持します。ソースとテストソースのコンパイル結果は通常異なるフォルダーに置かれます。

Generated Test Sources Root

生成されたテストソースルート

IDEは、このフォルダー内のファイルが手動で書き込まれるのではなく自動的に生成され、再生成できると見なします。

Resources Root

リソース・ルート

(Javaのみ)アプリケーションで使用されているリソースファイル(イメージ、設定XML、およびプロパティーファイルなど)。ビルドプロセス中に、リソースファイルはそのまま出力フォルダーにコピーされます。

Test Resources Root

テスト・リソース・ルート

これらのフォルダーは、テストソースに関連付けられたリソースファイル用です。

Excluded

除外

除外されたフォルダー内のファイルは、コード補完、ナビゲーション、およびインスペクションによって無視されます。そのため、今必要でないフォルダーを除外すると、IDEのパフォーマンスを向上させることができます。

通常、コンパイル出力フォルダーは除外としてマークされます。

フォルダー全体を除外するだけでなく、特定のファイルを除外することもできます。

Load Path Root

ロード・パス・ルート

(Rubyのみ)ロード・パスは、require ステートメントと load ステートメントがファイルを探す場所のパスです。

フォルダーカテゴリを設定する

  1. プロジェクトツールウィンドウのフォルダーを右クリックします。

  2. コンテキストメニューからディレクトリーをマークを選択します。

  3. 必要なカテゴリを選択します。

このようにして、カテゴリをサブフォルダーに割り当てることもできます。

以前のカテゴリのフォルダーを復元するには、このフォルダーを再度右クリックし、ディレクトリーをマークを選択し、<フォルダーカテゴリ>としてマークを解除を選択します。除外されたフォルダーの場合は、除外のキャンセルを選択します。

プロジェクト構造 | モジュール | ソースでフォルダーカテゴリを設定することもできます。

除外ファイル

特定のファイルは必要ありませんが、完全に削除したくない場合は、これらのファイルを一時的にプロジェクトから除外することができます。除外されたファイルは、コード補完、ナビゲーションおよびインスペクションでは無視されます。

ファイルを除外するには、ファイルをプレーンテキストファイルとしてマークする必要があります。除外されたファイルはいつでも元の状態に戻すことができます。

  1. プロジェクトツールウィンドウのディレクトリーツリーで必要なファイルを右クリックします。

  2. メニューからプレーン・テキストとしてマークを選択します。

プレーンテキストファイルは、ディレクトリーツリーの plain text icon アイコンでマークされています。

変更を元に戻すには、ファイルを右クリックし、メニューから<ファイルタイプ>としてマークを選択します。

名前パターンでファイルとフォルダーを除外する

場合によっては、ファイルやフォルダーを1つずつ除外するのは便利ではありません。例:ソースコードファイルと自動的に生成されたファイル(コンパイラなど)が同じディレクトリーに置かれ、生成されたファイルのみを除外したい場合は、これは不便かもしれません。この場合、特定のコンテンツ・ルートの名前パターンを1つまたは複数設定できます。

選択したコンテンツ・ルートの中にあるフォルダーまたはファイル名がパターンの1つと一致する場合、除外とマークされます。選択したコンテンツ・ルートの外側のオブジェクトは影響を受けません。

  1. ファイル | プロジェクト構造に移動するか、または Ctrl+Shift+Alt+Sを押します。

  2. プロジェクト設定セクションのモジュールをクリックし、モジュールを選択します。このモジュールに複数のコンテンツ・ルートがある場合は、ファイルまたはフォルダーを除外するコンテンツ・ルートを選択します。

  3. ダイアログの下部にある除外ファイルフィールドに、パターンを入力します。例: *.aj を入力してAspectJファイルを除外します。

    複数のパターンを設定し、それらを ; (セミコロン)記号で区切ることができます。

Javaソースにパッケージ接頭辞を割り当てる

Javaでは、フォルダー構造を手動で構成する代わりに、パッケージ接頭辞をフォルダーに割り当てることができます。パッケージプレフィックスは、ソースフォルダー、生成されたソースフォルダー、テストソースフォルダー、および生成されたテストソースフォルダーに割り当てることができます。

  1. Ctrl+Shift+Alt+S を押してプロジェクト構造ダイアログを開き、モジュールを選択します。

  2. 必要なモジュールを選択し、ソースタブを開きます。

  3. 右側のウィンドウで、ソース・フォルダーまたはテスト・ソース・フォルダーの横にある icons modules setPackagePrefixRollover をクリックします。

  4. パッケージプレフィックスを指定し、OKをクリックします。

    package prefix

リソースの出力パスを変更する

プロジェクトをビルドするとき、リソースはデフォルトでコンパイル出力フォルダーにコピーされます。出力フォルダー内に別のディレクトリーを指定してリソースを配置することができます。

  1. Ctrl+Shift+Alt+S を押してプロジェクト構造ダイアログを開きます。

  2. モジュールを選択し、必要なモジュールを選択します。

  3. ダイアログの右側で、ソースタブを選択します。

  4. 右側のウィンドウで、リソース・フォルダーまたはテスト・リソース・フォルダーで、必要なフォルダー(フォルダーパス)の右側にある Prefix をクリックします。

  5. 出力フォルダーのルートに相対的なパスを指定し、OKをクリックします。

    resource properties project structure image

モジュールのグループ化

IntelliJ IDEAでは、モジュールを論理的にグループ化できます。複数のモジュールを含む大きなプロジェクトがある場合、グループ化するとプロジェクトをより簡単にナビゲートできます。

モジュールをソートするには、モジュールに完全修飾名を付けることができます。例:すべてのCDIモジュールをグループ化する場合は、その名前に cdi. 接頭辞を追加できます。

  1. プロジェクト構造ダイアログ(Ctrl+Shift+Alt+S)を開き、モジュールをクリックします。

  2. グループ化するモジュールを選択し、コンテキストメニューを開き、モジュール名を変更するをクリックします。

  3. プレフィックスを指定して変更を適用します。

プロジェクト構造ダイアログで同じレベルのすべてのモジュールを表示するには、モジュールをフラット化するコンテキストメニューオプションを使用します。

qualified names

手動モジュールグループを設定していれば、引き続き作業することができますが、修飾された名前は使用できません。修飾名を有効にするには、ファイル | モジュール・グループを修飾名に変換を参照してください。次のダイアログでは、新しいモジュール名を確認し、必要に応じて調整することができます。

Convert Module Groups to Qualified Names dialog

モジュール依存関係

モジュールは、SDK、JARファイル(ライブラリー)、またはプロジェクト内の他のモジュールに依存する可能性があります。コードをコンパイルまたは実行するときには、モジュールの依存関係のリストを使用して、コンパイラまたはJVMのクラスパスを形成します。

新しい依存関係を追加する

  1. ファイル | プロジェクト構造または Ctrl+Shift+Alt+Sを押します。

  2. モジュール | 依存関係を選択します。

  3. artwork studio icons common add をクリックするか、Alt+Insertを押して、依存関係タイプを選択します。
    • JAR またはディレクトリー

    • ライブラリー。既存のライブラリーを選択するか、新しいライブラリーを作成してそれを依存関係のリストに追加することができます。

    • モジュール依存関係

依存関係を削除する

  • 依存関係を削除するには、それを選択して icons general remove svg をクリックするか、Alt+Deleteを押します。

依存関係を削除する前に、プロジェクト内の他のモジュールで依存関係が使用されていないことを確認できます。これを行うには、必要な依存関係を選択し、Alt+F7を押します。コンテキストメニューの使用箇所の検索オプションを使用することもできます。

依存関係スコープを指定する

依存関係スコープを指定すると、依存関係を使用するビルドのステップを制御できます。

  1. ファイル | プロジェクト構造または Ctrl+Shift+Alt+Sを押す

  2. モジュール | 依存関係を選択します。

  3. スコープ列のリストから必要な範囲を選択します。
    • コンパイル : プロジェクトのビルド、テスト、および実行(デフォルトのスコープ)が必要です。

    • テスト : 単体テストのコンパイルと実行に必要です。

    • ランタイム : プロジェクトをテストして実行するクラスパスの一部。

    • 提供:プロジェクトの構築とテストに使用されます。

IntelliJ IDEAはテストソースの依存関係を他のビルドツール(GradleやMavenなど)とは異なる方法で処理します。モジュール(モジュールAなど)が別のモジュール(モジュールB)に依存している場合、IntelliJ IDEAはAのテストソースがBのソースだけでなく、独自のテストソースに依存しているとみなします。したがって、Bのテストソースも対応するクラスパスに含まれます。

依存関係の分析

プロジェクトに依存関係が存在するかどうかをチェックし、正確な使用状況を確認するには、依存関係分析を実行します。

  1. ファイル | プロジェクト構造または Ctrl+Shift+Alt+Sを押します。

  2. モジュール | 依存関係を選択します。

  3. 必要な依存関係を右クリックし、この依存関係を分析するを選択します。

ダイアログを閉じることなく、いくつかの依存関係を1つずつ分析することができます。各解析の結果は、ツールウィンドウの別のタブで開かれます。必要なすべての依存関係を分析したら、プロジェクト構造ダイアログを閉じて結果を表示できます。

IntelliJ IDEAがプロジェクトで依存関係の使用を検出しなかった場合は、この依存関係を削除するように求められます。

依存関係をソートする

依存関係の順序は、IntelliJ IDEAがリスト内で指定された順序と同じ順序で処理されるため、重要です。

コンパイル時に、依存関係の順序は、コンパイラ(javac)が対応する参照を解決するためのクラスを探す順序を定義します。実行時に、このリストは、JVMがクラスを検索する順序を定義します。

依存関係は、名前とスコープでソートできます。また、icons actions previousOccurence svgicons actions nextOccurence svg のボタンを使って項目を上下に移動することもできます。

最終更新日: 2019年2月1日