今日Eclipseを起動したとき、次のエラーメッセージが表示されました。
「インデックスの更新」中に内部エラーが発生しました。 Javaヒープスペース
ログを確認したところ、次の例外があります。
!ENTRY org.Eclipse.core.jobs 4 2 2011-06-14 13:44:26.546
!MESSAGE An internal error occurred during: "Updating indexes".
!STACK 0
Java.lang.OutOfMemoryError: Java heap space
at org.sonatype.nexus.index.updater.IndexDataReader.readUTF(IndexDataReader.Java:132)
at org.sonatype.nexus.index.updater.IndexDataReader.readField(IndexDataReader.Java:122)
at org.sonatype.nexus.index.updater.IndexDataReader.readDocument(IndexDataReader.Java:96)
at org.sonatype.nexus.index.updater.IndexDataReader.readIndex(IndexDataReader.Java:63)
at org.sonatype.nexus.index.updater.DefaultIndexUpdater.unpackIndexData(DefaultIndexUpdater.Java:564)
at org.sonatype.nexus.index.updater.DefaultIndexUpdater.loadIndexDirectory(DefaultIndexUpdater.Java:252)
at org.sonatype.nexus.index.updater.DefaultIndexUpdater.access$300(DefaultIndexUpdater.Java:74)
at org.sonatype.nexus.index.updater.DefaultIndexUpdater$LuceneIndexAdaptor.setIndexFile(DefaultIndexUpdater.Java:815)
at org.sonatype.nexus.index.updater.DefaultIndexUpdater.fetchAndUpdateIndex(DefaultIndexUpdater.Java:995)
at org.sonatype.nexus.index.updater.DefaultIndexUpdater.fetchAndUpdateIndex(DefaultIndexUpdater.Java:159)
at org.maven.ide.Eclipse.internal.index.NexusIndexManager.updateRemoteIndex(NexusIndexManager.Java:1085)
at org.maven.ide.Eclipse.internal.index.NexusIndexManager.updateIndex(NexusIndexManager.Java:1025)
at org.maven.ide.Eclipse.internal.index.NexusIndexManager$1.run(NexusIndexManager.Java:632)
at org.maven.ide.Eclipse.internal.index.IndexUpdaterJob.run(IndexUpdaterJob.Java:71)
at org.Eclipse.core.internal.jobs.Worker.run(Worker.Java:54)
!SESSION 2011-06-14 13:46:30.734 -----------------------------------------------
Eclipse.buildId=M20100909-0800
Java.version=1.6.0_23
Java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, Arch=x86, WS=win32, NL=en_GB
Framework arguments: -product org.Eclipse.epp.package.jee.product
Command-line arguments: -os win32 -ws win32 -Arch x86 -product org.Eclipse.epp.package.jee.product
私は次のことを試みましたが成功しませんでした:
Eclipseの.iniファイルのメモリを増やします。
-Xms128m
-Xmx512m
-XX:MaxPermSize=256m
環境変数「MAVEN_OPTS:-Xmx256m」を作成します
〜/ .cache/m2eディレクトリを削除します
誰か別のアイデアがありますか?
この問題は、Eclipse用の古いバージョンのm2eプラグインが原因で発生しました。
新しいバージョンではリモートインデックスが自動的に転送されなくなったため、最初に推奨される解決策は、最新バージョンのm2eにアップグレードすることです。それが不可能な場合は、以下の手順に従ってください。
この問題は、M2EclipseプラグインがNexus(または互換性のある)リポジトリからリモートインデックスを転送することによって発生します。
Maven -> Download repository index updates on startup
。これでネットワークに再接続でき、Eclipseを再起動して、これで問題が実際に修正されたことを確認する必要があります。
最近このエラーが発生した場合は、Luna(Eclipse 4.4.0)およびm2e(1.4.1)の問題が原因である可能性があります。解決策は、m2e 1.4.1をアンインストールし、Help
--> Install new Software
--> All Available Sites
の下にm2e1.5.0をインストールすることです。 Eclipseの公式バグレポート
他にm2eキャッシュディレクトリはありますか?この問題に関するいくつかのバグレポートは、~/.m2/repository/.cache/m2e
を削除することを提案しています。一般的に、私にとっては、Maven/Nexusの問題(おそらくm2e)のようです。
.iniファイルのメモリを次のように増やしてみてください。
Xms256m Xmx768m
すでに提案されているより大きなメモリを保持します。
「clean」引数を使用してコマンドラインから開始してみてください。
Eclipse.exe -clean
コマンドラインから、-data引数を使用して開くワークスペースを指定することもできます。おそらく、IDEが元に戻るまで、代替の小さなワークスペースから始めます。
メモリを増やして-Xmx1024m
で試してみてください
さらに多くのメモリで試してください:)
-Xms512m
-Xmx1024m
-XX:PermSize=256M
-XX:MaxPermSize=512M