web-dev-qa-db-ja.com

Maven m2e .cacheディレクトリのクリーニング

私のMavenインストール(Windows 7 64ビット)には、ほぼ3.5GBの.cacheディレクトリがあります! m2eディレクトリのみが含まれます。 (Eclipse 4.3M7をm2eで実行しています。)現時点では、内部のすべてのものは必ずしも必要ではありません。さらに、この機能が何であるかさえわかりません。 .cacheディレクトリのMavenドキュメントがオンラインで見つかりませんでした。

.m2/repository/.cacheおよび.m2/repository/.cache/m2eディレクトリとは何ですか?なぜ彼らは何年も前からたくさんのものを持っているのですか?不要になったものをすべて廃棄するにはどうすればよいですか?

46
Garret Wilson

他の答えとは対照的に、.m2/*.xml(設定)および.m2/repository(厳密に維持する必要はありませんが、Mavenはインターネットの半分を再度ダウンロードする必要があります)。

さて、それは.cacheフォルダー:Eclipseを開くと、M2Eclipseは「リポジトリインデックスのダウンロード」に類似したジョブを実行することがあります。これらのインデックスにより、M2Eの「依存関係の追加」ウィザードを使用してアーティファクトID(の一部)のみを知っている場合、アーティファクトをすばやく見つけることができます。 http://dev.Eclipse.org/mhonarc/lists/m2e-users/msg02486.html the .cacheフォルダーは、次の場所です。

また、m2eは各リポジトリインデックスの少なくとも3つのコピーを保持することに注意してください。リモートリポジトリからダウンロードされた元の.gzファイル。 gzファイルの処理に費やされる時間を最適化するために使用される共有luceneインスタンス。ワークスペースごとのluceneインデックス。最初の2つはローカルリポジトリの.cache/m2eディレクトリに保存され、最後の1つはワークスペースごとに保存されます。

彼らが話しているLuceneのものは、特別に最適化された検索データベースです。これにより、部分的なアーティファクトIDまたはグループIDを入力するだけで、M2Eが特定のアーティファクトをより速く検索できるようになります。

http://dev.Eclipse.org/mhonarc/lists/m2e-users/msg01708.html を読んだ場合、それらを削除しても安全です:

m2eは、2つの場所にluceneインデックスをキャッシュします。ワークスペースごとのインデックスは.metadata/.plugins/org.Eclipse.m2e.core/nexusに保存され、〜/ .m2/repository/.cache/m2e/$ {m2e.version}にもグローバルキャッシュがあります。

キャッシュをクリーニングして、問題が解決するかどうかを確認してください。

ただし、M2Eは次にEclipseを開いたときに不足しているフォルダーに気付くので、すべてのリポジトリインデックスを再度ダウンロードするまで待機する準備をしておいてください。

43
JBert

Eclipse ideで.cacheフォルダーを無効にして増加させる設定を行うことができます。

ウィンドウ->設定-> Maven-> 起動時にリポジトリインデックスの更新をダウンロード

このオプションを無効にすると、.cacheの問題がなくなります!

4
dragonfly

M2eディレクトリは、MavenではなくEclipse Mavenプラグインのキャッシュです。

2
Georgemc

.m2ディレクトリは、Mavenリポジトリキャッシュです。 Mavenが何かをダウンロードすると、ここにキャッシュされます。通常、ディレクトリを削除するだけで安全です。 Mavenはそれを再作成します。ただし、リポジトリキャッシュにのみ存在する依存関係がある場合は、それらを再インストールする必要があります。

0
ilikeorangutans