227

IntelliJ IDEA 11について少し質問があります。Subversionからプロジェクトをインポートしました。これは、Mavenプロジェクトです。しかし、Mavenライブラリの依存関係に問題があるため、すべてのMaven依存関係を自動的に含めることはできません-IDEAは、そのクラスを開いたときにのみ依存関係エラーを表示します/これがここで得られるものです:

ここに画像の説明を入力してください

したがって、すべての依存関係を自動的に追加したいのですが、それは可能ですか、それともすべてのクラスファイルを調べて、Mavenの依存関係を特定して追加する必要がありますか?!

更新:いくつかの変更を行った後、何らかの方法で問題を解決する方法を見つけました。それが私がしたことです: ここに画像の説明を入力してください

しかし、論理的には、新しい依存関係を含めて先にチェックすることはないと思いますか?!... intelliJにこのための設定領域はありますか?依存関係をクラスパスに自動エクスポートしますか?!

4

38 に答える 38

307

IntelliJは、POMが準拠しており、すべての依存関係が利用可能である限り、すべての依存関係をダウンロードしてプロジェクトのクラスパスに自動的に追加する必要があります。

MavenプロジェクトをIntelliJにインポートすると、通常、Mavenプロジェクトの自動インポートを構成するかどうかを尋ねる情報ボックスが表示されます。つまり、POMに変更を加えると、それらの変更が自動的に読み込まれます。

このような機能を有効にするには、[ファイル]>[設定]>[Maven]>[インポート]に移動します。[Mavenプロジェクトを自動的にインポートする]チェックボックスがあります。

それでも問題が解決しない場合は、完全なクリーンアップを行って、最初からやり直すことをお勧めします。

  • プロジェクトウィンドウ(およびIntelliJ)を閉じて、すべての*.imlファイルとすべての.ideaフォルダーを削除します(モジュールごとに1つある必要があります)
  • mvn clean installコマンドラインから実行
  • プロジェクトをIntelliJに再インポートし、自動インポートを有効にするように求められたら注意してください

IntelliJ 2016アップデート

[ Mavenプロジェクトの自動インポート]設定は、IntelliJ設定で[ビルド、実行、展開]>[ビルドツール]>[Maven]>[インポート]に移動しました。

于 2012-07-13T08:59:16.617 に答える
73

IntelliJ14の前に修正

ファイル[メニュー]->設定->maven->インポートし、「maven3を使用してプロジェクトをインポートする」のチェックを外します

参照:http://youtrack.jetbrains.com/issue/IDEA-98425(他にもいくつかのアイデアがあるかもしれません)

IntelliJ15+を修正

今回はIntelliJ15を使用して、これに再び遭遇しました。今回は、「maven3を使用してインポートする」オプションが利用できなくなりました。原因は、IntelliJが「Mavenの依存関係を正しく解析しない」場合があり、そのうちの1つを正しく解析できない場合は、明らかにすべてをあきらめることでした。これが当てはまるかどうかは、Mavenプロジェクトのツールウィンドウを開くことでわかります([表示]メニュー->[ツールウィンドウ]->[Mavenプロジェクト])。次に、Mavenプロジェクトの1つとその依存関係を展開します。依存関係がすべて赤で下線が引かれている場合、「ヒューストン、問題があります」。 ここに画像の説明を入力してください

プロジェクト名自体にマウスを合わせると、実際の失敗を実際に確認できます。

ここに画像の説明を入力してください

私の例では、「問題:XXXで利用できるバージョンがありません」または「アーティファクトorg.xy.zの記述子を読み取れませんでした」と表示されました。参照:https ://youtrack.jetbrains.com/issue/IDEA-128846 および https:// youtrack.jetbrains.com/issue/IDEA-152555

この場合、pomファイルが関連付けられていないjarを処理していたようです(maven nexusリポジトリとローカルリポジトリ内)。これも問題である場合は、「現在の回避策:自分のコードでそのjarのクラスを実際に使用する必要がない場合(たとえば、推移的なMaven依存関係のみ)、pomからコメントアウトすることで実際に回避できます。 (一時的に)mavenプロジェクトをリロードしてから、コメントを解除します。その後、IntelliJは古い作業依存関係を「記憶」します。依存関係の推移的なチェーンから実行している場合は、一時的にmaven推移的除外を追加することもできます。 「」

役立つかもしれないもう1つのことは、バンドルされている3.0.5よりも「新しいバージョン」のMavenを使用することです。これをデフォルトとして使用するように設定するには、すべてのIntelliJウィンドウを閉じてから、設定->ビルド、実行、およびデプロイメント->ビルドツール-> mavenを開き、mavenホームディレクトリを変更します。「デフォルトの場合」と表示されます。これを調整すると上部に「プロジェクト」が表示されますが、調整後に「再インポート」する限り、特定のプロジェクトに合わせて調整することもできます。

キャッシュをクリア

intellijキャッシュフォルダー(windows:HOMEPATH /.{IntellijIdea,IdeaC}XXX linux〜/ .IdeaIC15)を削除するか、IntelliJ自体をアンインストールして再インストールします。これは、ファイル[メニュー]->に移動して実行することもできますInvalidate Caches / Restart...。をクリックしinvalidate and restartます。これにより、プロジェクト全体のインデックスが再作成され、IntelliJで追跡が難しい多くの問題が解決されます。

于 2014-07-22T16:25:20.413 に答える
42

プロジェクトをインポートするときpom.xmlは、プロジェクトディレクトリの代わりにを選択します。動作するはずです。

于 2015-11-13T04:30:49.160 に答える
30

IntelliJIDEAのMavenプロジェクトパネルからプロジェクトを再インポートしてみてください。で定義されているすべての依存関係をpom.xml自動的にダウンロードして構成する必要があります。

何らかの理由でIDEAからのダウンロードが機能しない場合はmvn install、コマンドラインから試して、依存関係をフェッチできるかどうかを確認してください。

もちろん、必要なすべての依存関係とカスタムリポジトリは、pom.xmlファイルで直接定義する必要があります。

于 2012-07-12T15:17:20.970 に答える
19

IntelliJ 2016-2.4の場合(そして私は他の新しいバージョンを信じています):

表示>ツールウィンドウ>Mavenプロジェクト

新しく表示されたツールバーで、Maven設定(ツールセットのアイコン)を選択します。

この画面が開いたら、Mavenメニューを展開し、[インポート]をクリックします。

ここで、「Mavenプロジェクトを自動的にインポートする」をクリックします。また、「JDKforImporter」オプションが使用するJDKバージョンと一致していることを確認してください。

[OK]をクリックします。次に、pom.xmlの赤い依存関係に移動し、赤い電球を選択して、[Mavenインデックスの更新]をクリックします。

于 2016-10-18T01:43:19.740 に答える
12

私を助けたもの:

ナビゲーション:設定| ビルド、実行、展開| Maven

「Mavenホームディレクトリ」を指定します-Mavenをインストールした場所

于 2016-03-31T15:10:44.910 に答える
8

特定のMavenモジュールがコンパイルされていない場合は、それらのpom.xmlが「無視されたファイル」リストにあるかどうかを確認してください。IntelliJgotoで

設定->プロジェクト設定->Maven->無視されたファイル

関連するpom.xmlが無視されるかどうかを確認します。

于 2014-06-18T09:07:24.467 に答える
8

私は同じ問題を抱えていて、ここに記載されているすべての答えを試しましたが、どれもうまくいきませんでした。

簡単な解決策は、プロジェクトフォルダーに移動し、すべての.ideaファイルと.imlファイルを削除して、IntelliJideを再起動することです。できます。設定で何もする必要はありません。

于 2019-05-06T07:54:52.653 に答える
7

開いて、 [ファイル]>[その他の設定]>[デフォルト設定...]>[Maven(設定)]>[インポート] または| IntelliJ Ideaに移動し ます。Preferences > Maven > Importing

ここに画像の説明を入力してください

コンソールで[自動インポートを有効にする]をクリックします。

ここに画像の説明を入力してください

于 2014-09-26T16:00:42.073 に答える
5

新しいプロジェクトを作成するときは、次のオプションを選択するだけです。

...
外部モデルからプロジェクトをインポート
する既存の外部モデル(Eclipse、Maven ...)上にIDEAプロジェクト構造を作成します
...

そこからかなり簡単に見つけることができます。
そしてあなたの場合、あなたはあなたのプロジェクトを閉じて、単に新しいものを作成することができます。プロジェクトのディレクトリを選択します。これにより、プロジェクトがオーバーライドされ、Mavenプロジェクトになります。

于 2012-11-12T19:06:43.833 に答える
5

同じパスを複数回インポートすると、Maven依存関係のインポートが機能しない場合があります。これは、既存のMavenプロジェクトをインポートした後に自動的に発生する可能性があります。なぜそうなるのかわからないので、バグだと思いがちです。

たとえば、私のプロジェクトが

hibernate
  src/main
  src/test

3つのパスをトップノードとしてインポートできます。

hibernate
src/main
src/test

そのような場合、依存関係は正しいように見えますが、余分なパス(この場合はsrc/mainsrc/test)を削除するまで依存関係は使用されません。これを行ったら、更新して[ビルド]>[プロジェクトの再ビルド]をクリックします。IDEAは依存関係を取得します。

この問題の症状は、ライブラリを手動でチェックすると、IDEAがパスの重複を警告することです(質問の2番目のスクリーンショット)。

必要に応じて依存関係を再読み込みする方法はいくつかあります。「Mavenプロジェクト」タブに移動すると、タブの左上に「すべてのMavenプロジェクトを再インポート」アイコンがあります。IDEAが混乱したと思われる場合は、[ファイル]>[キャッシュの無効化]をクリックできます。

于 2013-02-24T08:58:23.370 に答える
5

最初に、ユーザー設定ファイルに指定されたパスを確認します。 [設定]-> [ビルド、実行、開発]->[ビルドツール]->[Maven]で。フィールドには、Mavenのsettings.xmlのパスが含まれている必要があります。また、settings.xmlにはリモートリポジトリの正しいパスが含まれている必要があります。

于 2018-04-23T06:15:50.897 に答える
4

プロジェクト構造に移動し、[プロジェクト設定]、[モジュール]で、依存関係テーブルを選択します。依存関係ごとに、スコープを「テスト」から「コンパイル」に変更します。

于 2014-02-21T20:48:38.193 に答える
4

右下隅に「2つのプロセスが実行中です...」などと表示されている場合は、すべてのjarをダウンロードするのに時間がかかる可能性があるため、それが完了するまで待つ必要があります。

于 2014-09-04T00:04:00.320 に答える
4

プロジェクトを再インポートします。Mavenプラグインをインストールすると、これを使用できます。

プロジェクトを右クリック->Maven->再インポート

于 2015-10-26T09:13:10.510 に答える
4

同様の問題がありました。私の場合settings.xml、IntelliJから選択されていないカスタムを使用しています。

解決策:(
File > Settings > Build, Execution, Deployment > Maven: User settings fileここでカスタムsettings.xmlを選択してください)。

于 2018-09-05T11:21:15.400 に答える
3

IntelliJ2016.3.Xでは一部のサブ依存関係を解決できないという問題が発生しました。Maven home directoryこれは、[設定]> [ビルド、実行、展開]>[ビルドツール]>[Maven]をからBundled (Maven 3)に変更することで修正できます/usr/share/maven

その後、すべてのサブ依存関係は以前のIntelliJバージョンと同様に解決されました。

于 2017-01-24T13:57:56.293 に答える
3

そのため、組織の多くのコードベースでもこの問題に直面していました。上記の回答に加えて、jvmの割り当てプールメモリを調整できます。これは、大規模なコードベースでもたらされる依存関係の量が、IDEのjvmがプロジェクトを完全にビルドするのに圧倒される可能性があるためです。したがって、XMX値を増やしてみたところ、うまくいきました。IntelliJでJavaプロジェクトを「ビルドしない」問題を解決するために-Xmx3072を追加しました

ここに画像の説明を入力してください

于 2021-05-10T12:07:05.350 に答える
2

Maven-再インポートは私には機能しませんでした。私はSTS(Eclipse)にSpringプロジェクトを持っており、私の解決策は次のようにプロジェクトをIDEAにインポートすることです:

1)ファイル-新規-既存のソースからのプロジェクト...-ディレクトリを選択-Eclipseを選択します。
2)設定でMaven自動インポートをtrueに設定します。
3)次に、pom.xmlを右クリックして、[Mavenプロジェクトとして追加]を選択します。

この後、すべてをインポートしました。

于 2017-07-14T21:35:46.473 に答える
2

私は私のmacbookで同様の問題を抱えていましたが、小さな変更を加えただけで、pom.xmlすべての依存関係のダウンロードが開始されました。

以前の依存関係は、私のWindowsマシン用に次のように記述されていました。

<dependencies>
 <dependency>
  <groupId>javax.mail</groupId>
  <artifactId>mail</artifactId>
  <version>1.4</version>
</dependency>
</dependencies>

<dependencies>タグとタグを削除したところ、</dependencies>すべての依存関係のダウンロードが開始されました。

<dependency>
  <groupId>javax.mail</groupId>
  <artifactId>mail</artifactId>
  <version>1.4</version>
</dependency>

それがあなたのために働くかどうかはわかりませんが..しかし私にとってはうまくいきました。

ありがとう

于 2018-09-01T03:42:15.683 に答える
2

プロジェクトディレクトリから.ideaフォルダーを削除してから、プロジェクトをMavenプロジェクトとして再インポートすることが、私にとってはうまくいきました。

于 2018-10-30T15:47:19.277 に答える
2

私の場合、MAVENが使用するJAVAのパスは、マシンで構成されているJAVA_HOMEとして設定されていませんでした。したがって、依存関係をダウンロードしようとさえしていませんでした。この問題を解決するために私が従った手順、

  1. JAVAパス、[設定]>>[ビルド]>>[ビルドツール]>>[インポート]>>[インポーターのJDK]を確認しました。それをJAVA_HOMEに向けました。

  2. mvn clean install -U

    上記のコマンドを使用して、依存関係を強制的にダウンロードします。

  3. 再インポートされたMavenプロジェクト

于 2019-06-28T10:11:55.523 に答える
1

正しいミラー設定でsettings.xmlファイルを更新することでこの問題を解決しました。intellijは、mavenモジュールがインポートされるたびにリポジトリからメタデータをダウンロードしようとするようです。

于 2014-12-08T07:18:55.133 に答える
1

少しハイジャックして、私のために働いたものを追加します:

Maven ProjectsIDEの右端にあるサイドバーに移動し、依存関係がモジュールの下に正しくリストされていることを確認します。それらがそうであると仮定して、IDEAに再インポートするように依頼します(上部の最初のボタンは、反時計回りの円を形成する2つの青い矢印のように見えます)。

それを実行し、IDEAにプロジェクトをリロードさせると、すべての依存関係が魔法のように理解されました。

参考までに:これはIDEA 13.1.2

于 2015-08-14T14:29:48.897 に答える
1

私は同じ問題に直面し、問題を解決しない提案されたすべてを試しました、私はIntellijバージョン13.1.3を使用していました

最後に、修正に2時間以上費やした後、アップグレードしたバージョンを試して、バージョン14.1.4でプロジェクトを開くことにしました。これにより、最終的に問題が解決しました。これは以前のバージョンのバグの可能性があると思います。

これがお役に立てば幸いです。

于 2016-04-12T20:30:02.707 に答える
1

プロジェクト設定->モジュールリストから不要なモジュールを削除することで解決できました。

ここに画像の説明を入力してください

これらの追加モジュールは、(pom.xmlを開く代わりに)プロジェクトフォルダーからインポートしてIntelliJプロジェクトを作成したときに、IntelliJIDEAによって自動的に作成されたことがわかりました。次に、プロジェクトをMavenプロジェクトとして宣言した後、適切なモジュールが作成され、既存のモジュールがそれらと競合していました。プロジェクトの作成時にこれらのモジュールを除外することもできます。

于 2018-09-05T10:43:11.453 に答える
1

私の場合、モジュールの1つが何らかの理由で無視されました。これを解決するには:問題のあるモジュールを右クリックして、[プロジェクトを無視しない]を選択します。

プロジェクトの例を無視しない

于 2019-01-28T13:04:19.363 に答える
1

あなたは会社の内部ネットワークの下で働いているかもしれません。

その場合、外部のMaven依存関係をダウンロードまたは追加するには、フォルダーsettings.xmlの下のファイルをuser/<username>/.m2更新する必要があります。

管理者に連絡して適切なファイルを提供し、それをフォルダsettings.xmlに貼り付けてください。.m2

于 2019-06-25T10:22:50.273 に答える
1

キャッシュの無効化は私のために働いた:

ファイル>キャッシュを無効にする

チェック:

ファイルシステムキャッシュとローカル履歴を
クリアするダウンロードした共有インデックスをクリアする

次に、無効にして再起動します

于 2021-04-27T03:29:13.753 に答える
0

Mavenでは、dependencyManagement xmlセクションを削除し、プロジェクトセクションのすぐ下に依存関係があると、依存関係が含まれるようになりました。

于 2016-03-28T09:54:07.833 に答える
0

他のすべてが失敗した場合は、ローカルの.m2リポジトリ内のjarファイルが実際に有効であり、破損していないかどうかを確認してください。私の場合、ファイルは完全にダウンロードされていませんでした。

于 2017-02-11T22:05:09.773 に答える
0

問題は、pom.xmlに依存関係をリストしているにもかかわらず、プロジェクトの実行時にIntelliJIDEAがそれらの依存関係を再構築しないことであるように思われます。

私のために働いたのはこれです:

[実行]->[構成の編集...]に移動し、アプリケーションを見つけて、[起動前:]セクションが展開されていることを確認し、緑色のプラス記号をクリックして、[プロジェクトのビルド]を選択します。

ここに画像の説明を入力してください

于 2017-10-14T08:32:11.287 に答える
0

pom.xmlファイルのビルドタグの後にこのコード行を追加することで修正できました。実行中のプロジェクトと比較して、それが違いであることがわかりました。これですべて問題ありません。

<repositories>
        <repository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
        </pluginRepository>
    </pluginRepositories>
于 2019-06-20T15:06:34.047 に答える
0

re-import- maven- > close-intellij- > delete-the-entire .idea--- folder- > re-open-the- project-> build- > build - project /build-module- '親モジュール'

于 2019-10-26T11:34:08.290 に答える
0
  1. Mavenタブから[+]をクリックし、pom.xmlを選択します
  2. Mavenタブからダウンロードソースとドキュメントをクリックします
  3. プロジェクト構造(プロジェクトファイル/ディレクトリを表示できる場所)で、ビルドしようとしているプロジェクトを右クリックし、[ビルドモジュールプロジェクト名]を選択します。
  4. [実行]-[構成の編集]+[アプリケーションの追加]タブから、以下のフィールドに入力します。メインクラス-[プロジェクト]タブから手動で選択し、メインクラスを選択しますii。モジュールのクラスパスを使用します-アプリケーション名を選択しますiii。コマンドラインを短くする-クラスパスファイル
  5. 次に、アプリを実行します。
于 2019-12-05T22:02:01.030 に答える
0

この問題の考えられるパターンは、Nexusに接続しておらず、基本的にプロジェクトをオフラインモードでビルドしたいというものです。しかし、プロジェクトをインポートすると、IdeaはMavenの依存関係を自動的にダウンロードしようとしますが失敗します。[設定]で[オフラインで作業]チェックボックスを設定しましたが、遅すぎます。最初のダウンロードの試行中に何かが既に壊れていました。ここにリストされているオプションはどちらも、これを解決するのに役立ちませんでした。代わりに私は次のことをしました:

  1. 最初に作成された空のJava(Mavenではない)プロジェクト
  2. Maven設定で[オフライン作業]オプションをオンにしました
  3. 私のプロジェクトをMavenモジュールとしてこの新しいプロジェクトに追加しました

このように機能しました。

于 2020-11-03T20:36:30.000 に答える
0

IntelliJ 2020.3.3

これは私のためにそれをしました。

ビルド、実行、展開>ビルドツール。

「ビルドスクリプトの変更後にプロジェクトをリロードする」を変更します。

  • デフォルトの「外部変更」から「任意の変更」へ

ここに画像の説明を入力してください

これにより、プロジェクトの再構築にしばらく時間がかかりましたが、IntelliJでMavenの依存関係を確認できるようになりました。

ここに画像の説明を入力してください

于 2021-06-18T13:57:31.217 に答える
0

このための解決策:-

  1. ファイル->設定->Maven->Mavenホームパスに移動します
  2. そこには、mavenファイルがシステムに存在するmavenの適切なホームパス(環境変数で指定されたパス)を選択するようなバンドル(maven 3)があります。
  3. 適用をクリックします
  4. プロジェクトを更新します。
于 2022-01-13T09:34:44.933 に答える