web-dev-qa-db-ja.com

IntellijIDEAがMaven依存関係で指定されたクラスを認識しない

Mavenで作成されたプロジェクトがIntellijIDEAにあります。次に、Pom.xmlファイルで依存関係と外部リポジトリのセットを指定しました。

「mvn install」を実行すると、プロジェクトはコマンドラインで正常にビルドされます。 IDEでコードファイルのいずれかを開くと、Maven依存関係によって処理されるすべてのクラスが認識されないと言います-必要なJARを一度も追加しなかった場合の通常のプロジェクトのようにビルドパス。

Eclipse Mavenプロジェクト(IntelliJではなく)で、通常、左側に「Maven Dependencies」と表示され、maven経由で取り込まれたJARをリストする追加のディレクトリが表示されます。ここには表示されません。何が間違っていますか?


私の画面は次のようになります:

IDE Image

なんらかの理由で、再インポートではうまくいきませんでした。これを見た後:

http://www.jetbrains.com/idea/webhelp/maven-importing.html

自動インポートを設定すると、問題はなくなりました。うまくいけば、それは他の誰かを助ける。みんなのアイデアをありがとう:)。

新しいコンピューターにIntelliJ IDEAをインストールした後、私は同じ問題に直面しました。

リモートのMavenリポジトリを更新する必要がありました。 (Settings > Maven > Repositories

enter image description here

ローカルとリモートの両方のリポジトリを更新する必要がありました。リモートのリモートはこれまで更新されていません。再起動後、すべてが正常に機能しました。プロジェクトを再インポートする必要がある場合があります。

28
Max

あなたが行くことができます:

ファイル>設定>ビルド、実行、展開>ビルドツール> Maven

そして、pom.xmlが「無視されたファイル」リストにないかどうかを確認します。

20
Jarek

私は同様の問題に直面していました。私にとっては、プロジェクトを誤ってインポートしていたことになりました。私はやっていた

import project
    <navigate to existing project and click top level directory>
    follow the wizard

私のMavenの問題を解決したのは

import project
    <navigate to existing project and click the pom.xml
    follow the wizard
19
grinch

私にとっては、ファイル>>キャッシュの無効化/再起動>> IntelliJで機能する無効化と再起動

5
Sherin Syriac

Intellijを介したリポジトリの簡単な再インポートや更新は、私にとってはうまくいきませんでした。

代わりに、完全な~/.m2/repositoryディレクトリを削除し、mavenがすべてを自動的にソートする必要がありました。その後、Maven -> Reimportは終了しました。

3
Matt

私の場合、問題は、プロジェクトがmaven2にあり、intellijがmaven 3用に構成されていたことでした。設定でmaven2に切り替えると問題が解決しました

2
Stefano Ghezzi

私のようにまだ立ち往生している他の人にとって役に立つかもしれません。提案された修正はいずれも機能しませんでした。実際、mavenのインストール場所である主な問題を修正する前ではありません。

私の場合、標準の場所は使用しませんでした。 Maven設定(Settings/Maven/Mavenホームリポジトリ)でその場所を変更すると、うまくいきました。

私の2セント。

1
mikey

キャッシュが問題を引き起こしています!次のことを確認してください。

ターミナルで、project/moduleに移動します。

mvn clean install

IntelliJで:

  1. ファイル>キャッシュの無効化>無効化

  2. プロジェクト/モジュール> Maven>再インポートを右クリックします

1
Luis Mendoza

理解できない理由で、私の場合、ビルド、実行、展開>ビルドツール> Mavenで「スナップショットを常に更新する」設定をオンにする必要がありました。

これにより、IntelliJが依存関係を再ダウンロードして機能するようになりました。

1
Kresimir Nesek

これは、Intellijを1.4.15にアップグレードした後にも起こりました。プロジェクト全体を同じ結果で再インポートしようとしましたが、Maven Auto Importを有効にするとうまくいきました。

0
Eirik

IntelliJがpomファイルを無視する正当な理由がいくつかあるようです。私の場合、以前の回答はどれもうまくいきませんでした。だから、誰かがこの問題に遭遇した場合に、うまくいったのは次のとおりです。

この例では、module3はIntelliJによって完全に無視されていました。そのディレクトリ内のpom.xmlは、maven pomとしても扱われていませんでした。

私のプロジェクト構造は次のとおりです。

myProject
    module1
    module2
    module3

しかし、私の(簡略化された)pom構造は次のようなものです。

<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>devs</groupId>
    <artifactId>myProject</artifactId>
    <version>0.0-SNAPSHOT</version>
    <packaging>pom</packaging>
    <name>myProject</name>

    <modules>
        <module>module1</module>
        <module>module2</module>
    <modules>

    <profiles>
        <profile>
            <id>CompleteBuildProfile</id>
            <modules>
                <module>module3</module>
            </modules>
        </profile>
    </profiles>
</project>

これを修正するために、ルート<modules>要素を変更して、一時的にmodule3を追加しました。

    <modules>
        <module>module1</module>
        <module>module2</module>
        <module>module3</module>
    <modules>

次にルートポンを再インポートすると、IntelliJがモジュールを追加します。それが終わったら、ポンポンを元に戻します。 IntelliJは、プロジェクト構造からmodule3も削除するかどうかを尋ねます。 Noをクリックします。

バム!できたModule3が機能し、IntelliJから統合テストを再度実行できます:D

0
HankScorpio

[ファイル]> [設定]> [ビルド、実行、展開]> [ビルドツール]> [Maven]に移動し、Mavenホームディレクトリを確認します。これは、コマンドラインに使用されるのと同じMavenインストールである必要があります

0
AkilaMK

この問題は、プロジェクトのpom.xmlファイルではなく、IntelliJを最初に起動するときにインポートするプロジェクトディレクトリを選択することで発生しました。

問題のあるプロジェクトを閉じてからインポートプロセスを再度実行し、pom.xmlを選択すると、IDEでプロジェクトが完全に機能するようになりました。

0
nickebbitt

私にとっては、問題はMavenヘルパープラグインとの競合のようです( https://plugins.jetbrains.com/plugin/7179?pr=idea )。

私はそれを無効にし、再び動作します:)

0
fan

私にとって、トリックはファイル>プロジェクト設定>モジュール>依存関係で依存関係を追加することでした。

0
hosford42