IntelliJ IDEA11について小さな質問があります。Subversionからプロジェクトをインポートしました。それはすばらしいプロジェクトです。しかし、Mavenライブラリの依存関係に問題があるため、すべてのMaven依存関係を自動的に含めることはできません - IDEAは、そのクラスを開いたときにのみ依存関係エラーを表示します
ですから、すべての依存関係を自動的に追加したいのですが、それは可能ですか、それともすべてのクラスファイルを調べてmaven依存関係を追加しなければなりませんか。
更新:いくつかの修正を加えた後、私は何らかの方法で私の問題を解決する方法を見つけました。私がしたことは
しかし、論理的には、今後新しい依存関係が含まれたりチェックされたりすることはないと思いますか?... ... intelliJにこれに関する設定領域はありますか? - クラスパスへの依存関係の自動エクスポート?
IntelliJは、POMが準拠しており、すべての依存関係が利用可能である限り、すべての依存関係を自動的にダウンロードしてプロジェクトのクラスパスに追加する必要があります。
MavenプロジェクトをIntelliJにインポートするとき、通常Mavenプロジェクトに対して Auto-Import を設定するかどうかを尋ねる情報ボックスが表示されます。つまり、POMに何らかの変更を加えた場合、それらの変更は自動的にロードされます。
あなたはそのような機能を有効にすることができますFile> Settings> Maven> Importingに行く、「Import Maven projects automatically」と言うチェックボックスがあります。
それでも解決しない場合は、完全にクリーンアップしてからやり直すことをお勧めします。
*.iml
ファイルとすべての.idea
フォルダを削除します(モジュールごとに1つずつあります)。mvn clean install
を実行します。IntelliJ 2016アップデート :
IntelliJの設定で、 Mavenプロジェクトを自動的にインポート の設定が ビルド、実行、配置>ビルドツール> Maven>インポート に移動しました。
私はここに私の0.02ドルを投げると思った:私にとって、これに対する修正はに行くことだった
ファイル[メニュー] - > [設定] - > [maven] - > [インポート]および チェックを外す "プロジェクトのインポートにmaven3を使用"
ref: http://youtrack.jetbrains.com/issue/IDEA-98425 (他にもいくつか考えがあります)
更新:今回はIntelliJ 15でこれに遭遇した。これには「インポートにmaven3を使用する」オプションはもう利用できない。その原因は、IntelliJが "Mavenの依存関係を正しく解析できない"ことがあり、それらのうちの1つを正しく解析できない場合、明らかにそれらのうちの all を放棄することです。そうであるかどうかは、Mavenプロジェクトのツールウィンドウ([表示]メニュー - > [ツールウィンドウ] - > [Mavenプロジェクト])を開いて確認できます。それから、あなたのMavenプロジェクトの1つとその依存関係を拡張してください。依存関係が赤で下線が引かれている場合は、「ヒューストン、問題があります」。
あなたは実際に real の失敗をプロジェクト名自体の上にマウスを置くことによって見ることができます。
私の例ではそれは言った "問題:XXXのために利用可能なバージョンがありません"または "アーティファクトorg.xy.zのための記述子を読み込めませんでした" ref: https://youtrack.jetbrains.com/issue/IDEA-128846 and https://youtrack.jetbrains.com/issue/IDEA-152555
この場合私は関連付けられたpomファイルを持っていないjarファイルを扱っていたようです(私たちのMaven nexusリポジトリ、そして私のローカルリポジトリでも)。もしこれがあなたの問題でもあるなら、 "回避策:あなた自身のコードでそのjarからのクラスを実際に使う必要がないなら(例えば、推移的なMaven依存関係のみ)、pomからそれをコメントアウトすることで実際に逃げることができます。その後、IntelliJは以前の作業依存関係を「記憶」していますが、他の依存関係から移行している場合は、一時的にMaven推移的除外を追加することもできます。 「
役に立つかもしれないもう一つのことは、同梱の3.0.5よりも新しいバージョンのmavenを使うことです。これをデフォルトとして使用するように設定するには、すべてのintellijウィンドウを閉じてから、設定 - >ビルド、実行および配置 - >ビルドツール - > mavenを開き、mavenホームディレクトリを変更します。調整した後に「再インポート」する限り、特定のプロジェクトに合わせて調整することもできます。
役立つかもしれない他のもの:あなたのintellijキャッシュフォルダを削除する(ウィンドウ:HOMEPATH /。{IntellijIdea、IdeaC} XXX linux〜/ .IdeaIC15)そして/またはIntelliJ自体をアンインストールして再インストールする。 GLさん!
プロジェクトをインポートするときは、プロジェクトディレクトリの代わりにpom.xml
を選択してください。それはうまくいくはずです。
IntelliJ IDEAのMavenプロジェクトパネルからプロジェクトを再インポートしてみてください。 pom.xml
で定義されているすべての依存関係を自動的にダウンロードして設定するはずです。
何らかの理由でIDEAからダウンロードできない場合は、コマンドラインからmvn install
を試して、依存関係を取得できるかどうかを確認してください。
もちろん、必要な依存関係とカスタムリポジトリはすべて、pom.xml
ファイルで直接定義する必要があります。
IntelliJ 2016-2.4(および他の新バージョン)については、
表示>ツールウィンドウ> Mavenプロジェクト
新しく表示されたツールバーで、Mavenの設定(ツールセットのアイコン)を選択します。
この画面が開いたら、Mavenメニューを展開して「インポート」をクリックします。
ここで、「Mavenプロジェクトを自動的にインポートする」をクリックします。また、[JDK for Importer]オプションが、使用するJDKのバージョンと一致していることを確認してください。
OKをクリックしてください。 pom.xmlの赤い依存関係に移動し、赤い電球を選択して、[Mavenインデックスの更新]をクリックします。
私を助けたもの:
ナビゲーション:設定|ビルド、実行、配置メーベン
「Mavenホームディレクトリ」を指定します - Mavenをインストールした場所
特定のMavenモジュールがコンパイルされていない場合は、それらのpom.xmlが「無視されるファイル」リストにあるかどうかを確認してください。 IntelliJにジャンプ
設定 - >プロジェクト設定 - > maven - >無視されたファイル
そして、関連するpom.xmlが無視されていないか確認してください。
IntelliJ Idea
を開き、 ファイル>その他の設定>デフォルト設定...> Maven(設定)>インポート または|にアクセスします。 Preferences > Maven > Importing
コンソールで 自動インポートを有効にする をクリックします。
同じパスを何度もインポートすると、Maven依存関係のインポートが機能しないことがあります。これは既存のMavenプロジェクトをインポートした後に自動的に発生する可能性があります。なぜこれが起こるのか私には分からないので、私はそれがバグだと思う傾向があります。
たとえば、私のプロジェクトが
hibernate
src/main
src/test
3つのパスは最上位ノードとしてインポートできます。
hibernate
src/main
src/test
このような場合、依存関係は正しいように見えますが、余分なパス(この場合はsrc/main
とsrc/test
)を削除するまでそれらは使用されません。これを行ったら、更新して「ビルド」>「プロジェクトの再ビルド」をクリックします。 IDEAは依存関係を拾います。
この問題の症状は、手動でライブラリをチェックしたときにIDEAが重複したパスであることを警告することです(質問の2番目のスクリーンショット)。
必要に応じて依存関係を読み直す方法はいくつかあります。 [Mavenプロジェクト]タブに移動すると、タブの左上に[すべてのMavenプロジェクトの再インポート]アイコンが表示されます。 IDEAが混乱したと思われる場合は、[ファイル]> [キャッシュの無効化]をクリックします。
新しいプロジェクトを作成するときは、単にオプションを選択する必要があります。
...
外部モデルからプロジェクトをインポート
既存の外部モデルの上にIDEAプロジェクト構造を作成します(Eclipse、Maven ...)
...
あなたはそこからかなりまっすぐ進むのを見つけるでしょう。
そして、あなたの場合は、プロジェクトを閉じて新しいプロジェクトを作成するだけです。プロジェクトのディレクトリを選択します。これにより、ディレクトリが上書きされ、Mavenプロジェクトになります。
プロジェクトの構造に移動し、プロジェクトの設定、モジュールの下にある依存関係テーブルを選択します。依存関係ごとに、範囲を「テスト」から「コンパイル」に変更します。
私は同様の問題を抱えていました、私の場合私はIntelliJから選ばれなかったカスタムsettings.xml
を使用しています。
解決策: File > Settings > Build, Execution, Deployment > Maven: User settings file
(ここで私のカスタムsettings.xmlを選びました)。
プロジェクトを再インポートしてください。 Mavenプラグインをインストールすればこれを使うことができます。
プロジェクトを右クリック - > Maven - > Reimport
私の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>
私はそれがあなたのために働くかどうかわからない..私のためにうまくいった。
ありがとう
IntelliJ 2016.3.Xでは一部の依存関係を解決できないという問題に遭遇しました。これは、設定>ビルド、実行、配置>ビルドツール> MavenのMaven home directory
をBundled (Maven 3)
から/usr/share/maven
に変更することで修正できます。
その後、以前のIntelliJバージョンと同様に、すべての下位依存関係が解決されました。
最初のチェックパス ユーザー設定ファイルの指定: in 設定 - >ビルド、実行、開発 - >ビルドツール - > Maven 。フィールドには、あなたのMavenの settings.xml のパスがあるはずです。またsettings.xmlには、リモートリポジトリの正しいパスが必要です。
私は同じ問題に直面して、問題を解決しない提案されたすべてを試みました、私はIntellijバージョン13.1.3を使用していました
それを修正するために数時間以上を費やした後、私は最終的に問題を解決したアップグレード版を試してバージョン14.1.4でプロジェクトを開くことにしました。私はこれを前のバージョンの推定バグと考えています。
これが役に立つことを願っています!
私はsettings.xmlファイルを正しいミラー設定で更新することでこの問題を解決しました、intellijはmavenモジュールがインポートされるたびにリポジトリからメタデータをダウンロードしようとするようです。
プロジェクトディレクトリから.ideaフォルダを削除してから、そのプロジェクトをMavenプロジェクトとして再インポートするのが私にとってはうまくいきました。
Maven - Reimportは私にはうまくいきませんでした。私はSTS(Eclipse)でSpringプロジェクトを持っています、そして私の解決策はプロジェクトをIDEAにインポートすることです。
1)ファイル - 新規 - 既存のソースからプロジェクト... - ディレクトリの選択 - Eclipseの選択.
2)設定でMavenの自動インポートをtrueに設定します。
3)pom.xmlを右クリックして、[Mavenプロジェクトとして追加]を選択します。
この後、すべてインポートされました。
右下隅に「2プロセス実行中...」などと表示されている場合は、すべてのjarファイルをダウンロードするのに時間がかかることがあるので、それが完了するのを待つ必要があります。
ちょっと乗っ取って私のために働いてしまったものを追加します。
IDEの右端にあるMaven Projects
サイドバーに入り、依存関係がそこにあるモジュールの下に正しくリストされていることを確認します。そうであれば、IDEAに再インポートするように依頼してください(一番上の最初のボタンは、2つの青い矢印が反時計回りの円を形成するように見えます)。
それをして、IDEAプロジェクトをリロードさせると、すべての依存関係が魔法のように理解されました。
参考のために:これはIDEA 13.1.2
でした
私は同じ問題を抱えていて、ここで述べられたすべての答えを試しました、どれもうまくいきませんでした。
簡単な解決策はあなたのプロジェクトフォルダに行き、すべての.ideaと.imlファイルを削除してIntelliJ ideを再起動することです。できます。設定を変更する必要はありません。
Mavenホームディレクトリを正しく設定し、設定のインポートセクションの下にある「Mavenプロジェクトを自動的にインポートする」をチェックする必要がありました。その後、依存関係の解決を始めました。
Mavenでは、dependencyManagement xmlセクションを削除し、プロジェクトセクションのすぐ下に依存関係があるだけで、依存関係が含まれるようになりました。
私はpom.xmlファイルのbuildタグの後にこのコード行を追加することで私のものを修正することができました、私は私の実行中のプロジェクトからそれを比較し、それが違いであることを発見しました、今私はすべて良いです.
<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>
それ以外のすべてが失敗した場合は、ローカルの.m2リポジトリ内のjarファイルが本当に有効で破損していないかどうかを確認してください。私の場合、ファイルは完全にダウンロードされていませんでした。
私の場合、MAVENが使用するJavaのパスは、マシンで構成されたJava_HOMEとして設定されていませんでした。したがって、依存関係をダウンロードしようとしてもいませんでした。この問題を解決した私が従った手順、
Javaパスを確認しました設定>>ビルド>>ビルドツール>>インポート>>インポーターのJDK。 Java_HOMEを指し示しました。
mvn clean install -U
上記のコマンドを使用して、依存関係のダウンロードを強制します。
再インポートされたMavenプロジェクト
"File --> Open"
を試してからPOMファイル自体に移動するまでは、何もうまくいきませんでした。
会社の内部ネットワークで働いている可能性があります。
その場合、外部のMaven依存関係をダウンロードまたは追加するには、settings.xml
フォルダーの下のuser/<username>/.m2
ファイルを更新する必要があります。
管理者に連絡して正しいsettings.xml
ファイルを提供し、.m2
フォルダーに貼り付けてください。