web-dev-qa-db-ja.com

Intelli J IDEAはインデックスの更新に永遠に時間がかかります

Intelli Jがプロジェクトのインデックスを更新するのに多くの時間(約12時間)を要するのは正常ですか? Intelli Jをマシンにインストールし、かなり大きなMavenプロジェクト(13k +ファイル)をインポートしました。

私はプロジェクトが大きいことを理解していますが、私は一晩中コンピューターを起動し、朝目が覚めたとき、Intelli Jはまだファイルのインデックスの更新を完了していないため、ポップアップが表示されてから何もすることができません「インデックスの更新」というタイトルは、画面の中央に表示され続けます。

99
0x56794E

フォーラムにはさまざまなIntelliJバージョンのいくつかの回答がありますが、ここに私が試したものがあります(IntelliJ 13)。

  • メモリを増やします。 「インデックスの更新」では何の助けにもなりません
  • プロジェクトの.ideaとimlを削除します。助けにならない。

最後に、「インデックスの更新」に関する私の問題を解決したのは次のとおりです。

  • user/.IntellIJIdea13/system /の「キャッシュ」フォルダーを削除します
96
anho-dev

キャッシュを削除してみましたが、完全に機能します。ソリューションの友人に感謝します。

ただ:

  1. IntelliJ IDEAを開きます
  2. Fileメニューを選択します
  3. キャッシュの無効化/再起動...メニューを選択します。
    選択すると、多数のオプションを含むポップアップが表示されます。
  4. 無効にして再起動を選択します
    それを行う前に、すべての変更を保存したことを確認してください。それ以外の場合、保存されていない変更が削除される可能性があります。

ヒットすると、IntelliJが再起動し、すべてのインデックス作成が非常に高速に実行されることがわかります。

63
user2238153

ライブラリフォルダーのキャッシュを削除する

rm -rv ~/Library/Caches/IdeaIC15/caches/

Mac OSXでは、キャッシュの場所は~/Library/Cachesです

14

私はIntelliJ 2017.2.3で同じ問題を抱えていました-つまり、私のプロジェクトはインデックスを何度も更新し続けます。

ホームディレクトリのディスククォータを超えたことを発見しました。デフォルトでは、IntelliJは次のようにインデックスをホームディレクトリに保存します。

~/.IdeaIC2017.2/system/index/

私にとっての解決策は次のとおりです。

  1. IntelliJを終了します
  2. .IdeaIC2017.2ディレクトリ全体を、より多くのスペースがある別のマウントに移動します。

    mkdir /space/ideaConfig
    mv ~/.IdeaIC2017.2 /space/ideaConfig/IdeaIC
    
  3. bin/idea.propertiesを更新して、新しいインデックス/設定の場所を指すようにします。

    idea.config.path=/space/ideaConfig/IdeaIC/config
    idea.system.path=/space/ideaConfig/IdeaIC/system
    

この質問に対する他の回答のいくつかは同じ問題によるものであり、インデックスを構築するのに十分なディスク容量を解放する可能性のある「キャッシュフォルダの削除」、「キャッシュの無効化」などによって誤って修正された可能性があります。

2
klshxsh

アイデアは有用な仕事をすることよりもゴミを集めることのほうが多いと思います。デフォルトの代わりにG1 GCを使用します。

ヘルプ-カスタムVMオプションの編集

-XX:+UseG1GC

の代わりに

-XX:+UseConcMarkSweepGC

もちろん、Ideaを再起動します。

欠点:G1は、プロセスを停止する前にガベージを収集しようとします。これは非常識ですが、これはそれがすることです。 16Gのヒープを持つプログラムの場合、クリーンアップには27分かかりました。したがって、16Gヒープを使用するようにIdeaを構成しないでください。

受け入れられた答えや他の答えは特定の問題を解決する可能性がありますが、非常に長いインデックス作成時間の問題は、多くの場合、リポジトリに多数のファイルを含むディレクトリが含まれているか、リンクされているという事実に起因することがわかりました。多くの場合、これはテストのために行われ、問題のディレクトリは実際にはプロジェクトの一部ではありません。 VCSによって無視されます。

IDEは、インデックス作成時にこれらのディレクトリを自動的に無視しませんが、プロジェクトからディレクトリを「除外」することは可能です。これにより、インデックス作成も防止されます。

0
Johann Petrak

おそらく-キャッシングシステムの古いバグ。 IntelliJまたはJDKのバージョンをアップグレードする場合は特に、すべてのバージョンで発生します。修正するには:1)GUIを閉じます。 2)%HOME_DIR%.IntelliJIdeaXXXX\system\cachesに移動して削除します3)GUIを再度起動します。

0
Iakov Senatov