Maven 依存関係
IntelliJ IDEA を使用すると、プロジェクト内の Maven 依存関係を管理できます。Maven 依存関係の追加、インポート、ダイアグラムでの表示、分析を行うことができます。
Maven 依存関係を追加する
IntelliJ IDEA を使用すると、プロジェクトに Maven 依存関係を追加できます。POM 内で依存関係を指定することをお勧めします。IntelliJ IDEA モジュール設定内で手動で設定した依存関係は、次回の Maven プロジェクトの再ロード時に破棄されます。
エディターで POM を開きます。
Alt+Insert を押して、生成コンテキストメニューを開きます。
コンテキストメニューから依存を選択します。
Maven アーティファクト検索ツールウィンドウの検索フィールドで、依存関係の名前の入力を開始します。結果のリストで必要なものを選択し、追加をクリックします。
IntelliJ IDEA は、pom.xml に依存関係を追加します。
IntelliJ IDEA は、Maven ツールウィンドウの依存関係ノードとプロジェクトツールウィンドウの外部ライブラリにも依存関係を追加します。
追加された依存関係に独自の推移的な依存関係がある場合、IntelliJ IDEA はそれらを両方のツールウィンドウに表示します。
アノテーションプロセッサーを有効にする
POM ファイルを開きます。
annotationProcessors
およびannotationProcessorPaths
オプションを指定してください。例: 次のコードを確認してください:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.5.1</version> <configuration> <annotationProcessorPaths> <path> <groupId>org.sample</groupId> <artifactId>sample-annotation-processor</artifactId> <version>1.2.3</version> </path> </annotationProcessorPaths> </configuration> </plugin> </plugins> </build>詳細は、Maven(英語) を参照してください。
プロジェクトを再インポートします。IntelliJ IDEA は、アノテーションプロセッサープロファイルを作成し、アノテーション処理を有効にして、アノテーションプロセッサー設定に適切なパスを追加します。
にある
依存関係情報の一元化
マルチモジュール Maven プロジェクトでは、親 POM の依存関係がすべてのサブプロジェクトに継承されます。dependencyManagement
を使用して統合し、依存関係のバージョンの管理を一元化する(英語)を使用できます。
エディターで POM を開きます。
Alt+Insert を押して、生成コンテキストメニューを開きます。
コンテキストメニューから、管理対象の依存関係オプションを選択すると、マルチモジュールプロジェクトの親 POM の
dependencyManagement
セクションで定義されている依存関係のリストが表示されます。IntelliJ IDEA は、BOM ファイル(英語)からの依存関係のリストも表示します。目的の依存関係を選択し、OK をクリックします。依存関係が POM に追加されます。
DependencyManagement
から取得される依存関係のバージョンを指定する必要はありません。ただし、定義済みのバージョンを上書きする場合は、POM に管理依存関係を追加するときに
version
を含める必要があります。
Maven 依存関係のスコープを追加する
POM を使用して、依存関係のスコープ(英語)を追加できます。この場合、IntelliJ IDEA は指定されたフェーズで依存関係を実行します。
POM では、依存関係の記述で
scope
を追加し、コード補完を使用してスコープの名前を追加します。変更をインポートします。スコープの名前が Maven ツールウィンドウに表示されます。プロジェクト構造ダイアログのモジュールページでは、依存関係の範囲も表示されます。
プロジェクト構造ダイアログで依存関係の範囲を変更しても pom.xml ファイルには影響しません。
依存関係を定義するときに、Maven スコープシステム(英語)を使用して、カスタム jar ファイルを依存関係として追加することもできます。ただし、この依存関係は自分のマシンでのみ使用可能であり、ローカルのデプロイに対してのみ使用できることに注意してください。
Maven 推移的依存関係を処理する
追加またはインポートされた Maven 依存関係でプルされた推移的な依存関係(英語)を表示できます。それらのバージョンを確認したり、変更したり、それらの依存関係を完全に除外したりできます。
Maven ツールウィンドウには、直接依存関係と、引き込まれたすべての推移的依存関係が表示されます。
推移的な依存関係を表示する
プロジェクトの POM で、Ctrl を押し、依存関係の上にマウスを置きます。
依存関係をクリックして、依存関係の POM を開きます。
依存関係 POM では、アクティブな依存関係、その推移的な依存関係、そのバージョンを表示します。
依存関係が引き込まれた起点をチェックすることができます。
推移的な依存関係を除外する
必要に応じて推移的な依存関係を除外することができます。
依存関係 POM を開き、除外する推移的依存関係を見つけます。
groupId
とartifactId
をコピーします。プロジェクト POM で、アクティブな依存関係に
exclusions
と入力し、コード補完を使用して、除外する依存関係のコピー情報を貼り付けます。依存関係は、プロジェクトおよび Maven ツールウィンドウからも除外されます。
Maven 依存関係をインポートする
Maven プロジェクトに依存関係をインポートできます。IntelliJ IDEA は、追加された依存関係をインポートすると、依存関係を解析してプロジェクトを更新します。
pom.xml ファイルに、必要な依存関係を追加します。pom.xml を変更すると、IntelliJ IDEA は変更のロードを提案する通知を表示します。エディターで をクリックして、依存関係をインポートし、プロジェクトを更新します。
Maven ツールウィンドウで、 を押します。この場合、すべてのプロジェクトとその依存関係の再インポートプロセスを手動でトリガーします。
Maven の依存関係をダイアグラムとして表示する
IntelliJ IDEA を使用すると、Maven の依存関係をダイアグラム形式で表示して操作できます。
ダイアグラムを生成する
Maven ツールウィンドウのツールバーで、 をクリックするか、コンテキストメニューから適切なオプションを選択します。
ダイアグラムウィンドウに、IntelliJ IDEA はサブプロジェクトと、推移的なものを含むそのすべての依存関係を表示します。
ダイアグラム構造を表示する
ダイアグラムを生成します。
左側のツールバーの構造をクリックします。IntelliJ IDEA は、構造ツールウィンドウを開きます。このウィンドウには、選択したブロックとその隣接ブロックの小さなプレビューを含むダイアグラムのマップが表示されます。
コンテキストメニューを使用して、ズームインとズームアウト、キャンバスの移動、レイアウトの変更、ダイアグラムの一部のイメージへのエクスポートを行います。
ダイアグラムウィンドウでさまざまなアクションを実行できます。
可視性レベルを変更する
可視性レベルを変更したり、特定のスコープを持つ依存関係を表示したり(コンパイル、テストなど)できます。
ダイアグラムウィンドウでサブプロジェクトを選択し、 をクリックします。
リストから、表示したい依存関係の範囲を選択します。IntelliJ IDEA は、指定された依存範囲のみを表示します。
POM に移動する
ダイアグラムウィンドウから POM に簡単に移動できます。
目的のノードを選択し、F4 を押すか、コンテキストメニューで
を選択します。対応するファイルがエディターで開きます。
ダイアグラムウィンドウの アイコンをクリックすると、競合や重複を確認できます。
競合と重複を確認する
ダイアグラムウィンドウで、 アイコンをクリックします。
赤い矢印は、重複またはエラーを含む依存関係を示しています。IntelliJ IDEA はまた、競合を解決するのに役立つ依存関係のバージョンも表示します。依存関係をダブルクリックしてその POM を開きます。
選択からルートまでのパスを表示する
依存関係を選択し、それらがプロジェクトにどのように含まれるかを確認できます。
ダイアグラムウィンドウで、プロジェクトへの接続を確認したい依存関係を選択します。一度に複数の依存関係を選択したい場合は、Shift を押しながら選択してください。
をクリックします。
選択したノードの近隣を表示
依存関係を選択して、選択したノードに接続されている他の依存関係を確認できます。大きなダイアグラムがあり、その一部だけに注目したい場合に役立ちます。
ダイアグラムウィンドウで、必要な依存関係を選択します。一度に複数の依存関係を選択したい場合は、Shift を押しながら選択してください。
をクリックします。
依存関係を除外する
ダイアグラムを使用して、プロジェクトの POM から依存関係を除外できます。
ダイアグラムウィンドウで依存関係を選択します。
コンテキストメニューから
を選択します。リストから、除外定義を追加するモジュール(ある場合)を選択します。選択した依存関係がダイアグラムから削除され、
exclusion
セクションがモジュールの POM の対応する依存関係に追加されます。
依存関係アナライザー
Maven 依存関係アナライザーを使用すると、解決済みの依存関係、未解決の依存関係、競合のある依存関係、プロジェクトとサブプロジェクトの推移的な依存関係をすばやく確認して分析できます。
依存関係の解析
Maven ツールウィンドウのツールバーで、 をクリックします。
または、Maven ツールウィンドウで、必要な依存関係を右クリックし、コンテキストメニューから依存関係の解析を選択します。プロジェクトビューでモジュールを右クリックして、同じアクションを使用することもできます。
依存関係アナライザーウィンドウでは、分析範囲を絞り込んだり、競合する依存関係のみを確認したり、使用状況を確認したりできます。
必要な依存関係を
pom.xml
ファイルで確認したい場合は、依存関係を右クリックして Maven 依存関係に移動を選択します。特定の依存関係で Maven 設定を開くをクリックすると、IntelliJ IDEA は依存関係の POM ファイルを開きます。パッケージ検索に移動をクリックして、依存関係ツールウィンドウを操作する内の該当の依存関係に移動することもできます。
重複する依存関係が見つかった場合は、グレー表示されます。
依存関係アナライザーウィンドウで使用可能なオプションとアイコンの詳細については、リファレンスセクションを参照してください。
依存関係アナライザーツールウィンドウリファレンス
項目 | 説明 |
---|---|
スコープ | プロジェクトですべての依存関係が使用されているスコープを確認できます。スコープ(英語)に基づいて依存関係のリストを絞り込むには、スコープのリストから適切なオプションを選択します。 |
競合のみを表示 | をクリックして、未解決または競合する依存関係のみを表示します。 |
グループ ID の表示 | をクリックし、グループ ID の表示を選択して、依存関係のリストにグループ ID(英語) を表示します。 |
ツリー表示 | を切り替えて、依存関係のリストをノードの形式またはフラットリストで表示します。 ツリービューは、推移的な依存関係をすばやく確認できます。 |
展開 / 折りたたみ | / を使用して、依存関係のリストを展開または折りたたみます。 |
関連ページ:
Maven
IntelliJ IDEA は、構築プロセスの自動化に役立つ Maven との完全な機能統合をサポートしています。新しい Maven プロジェクトの作成、既存のプロジェクトのオープンと同期、既存の IntelliJ IDEA プロジェクトへの Maven サポートの追加、マルチモジュールプロジェクトの構成と管理を簡単に行うことができます。Maven プロジェクトを作成して WSL 環境に保存したり、WSL ファイルシステムから開いたりすることもできます。詳細については、WSL のセクションを参照してくだ...
モジュール
IntelliJ IDEA では、モジュールはプロジェクトの重要な部分であり、プロジェクトと一緒に自動的に作成されます。プロジェクトには複数のモジュールを含めることができます。新しいモジュールを追加し、グループ化し、現時点では必要のないモジュールをアンロードできます。通常、モジュールは 1 つまたは複数のコンテンツルートとモジュールファイルで構成されますが、モジュールはコンテンツルートがなくても存在できます。コンテンツルートは、コードを保存するフォルダーです。通常、ソースコード、単体テスト、リソ...
アノテーションプロセッサーを構成する
コンパイル時にカスタムアノテーションを処理するように IntelliJ IDEA を構成できます。アノテーションを処理するためにコンパイル時にコードを生成するプロセスは、アノテーション処理と呼ばれます。アノテーションプロセッサーは、アノテーションに基づいてコードを検証、生成、変更できます。これにより、記述する必要のあるコードの量を大幅に削減できます。アノテーションプロセッサーはプロジェクト内に保存できます。この場合、IntelliJ IDEA はそれをクラスパスから取得します。アノテーションプロ...
Maven ツールウィンドウ
Maven プロジェクトを作成または開くと、Maven ツールウィンドウが自動的に有効になります。Maven ツールウィンドウを使用して、利用可能な Maven プロジェクトを表示し、ソースと Javadoc をダウンロードし、ビルドライフサイクルのフェーズを実行します。ツールウィンドウには、ライフサイクル、プラグインサブノードとともに、各 Maven プロジェクトのノードが表示されます。pom.xml ファイルの少なくとも 1 つにプロファイル定義が含まれている場合、プロファイルノードがツールウィン...
Maven プロジェクト
IntelliJ IDEA を使用すると、Maven プロジェクトを管理できます。リンク、プロジェクトの無視、Maven および IntelliJ IDEA プロジェクトの変更の同期、ビルドおよび実行アクションの構成を行うことができます。POM に移動する Maven ツールウィンドウで、リンクされたプロジェクトを右クリックします。コンテキストメニューからソースに移動を選択します。IntelliJ IDEA は適切な Maven 構成ファイルに移動し、関連する POM がエディターで開きます。Maven...
プラグインのインストール
プラグインは IntelliJ IDEA のコア機能を拡張します。例: プラグインをインストールして、次の機能を取得します。バージョン管理システム、課題追跡システム、ビルド管理サーバー、その他のツールとの統合。さまざまな言語とフレームワークのコーディング支援サポート。ショートカットのヒント、ライブプレビュー、ファイルウォッチャーなど。新しいプログラミング言語を学ぶのに役立つコーディング演習。プラグイン設定を開くを押して設定を開き、を選択します。マーケットプレースタブを使用して、JetBrains...