Macの ~/.m2/repository とは。削除しても安全か
~/.m2/repository は削除してもMavenが壊れることはありませんが、時間がかかります。どのプロジェクトも次のビルドで依存関係とプラグインをもう一度ダウンロードし、自分でそこにインストールしたものはビルドし直す必要があります。
場所
~/.m2/repositoryこれは何か
Mavenは多くのJavaプロジェクトで使われているビルドツールで、~/.m2/repository にローカルリポジトリを保持します。ビルドに必要なライブラリとプラグインはすべて一度だけダウンロードされてここに保存されるので、以降のビルドでは取得し直さずに済みます。GradleなどのJVM向けツールも、ここから読み込むことができます。
プロジェクトがこれまでに使った依存関係のバージョンが増えるたびに大きくなり、Mavenが古いバージョンを自分で削除することはありません。このフォルダには、mvn install でビルドした成果物も入っています。これらはインターネットから取得したものではありません。
その隣にある ~/.m2/settings.xml にはMavenの設定が入っており、ミラーやリポジトリの認証情報が含まれていることがあります。これはリポジトリの一部ではないので、残しておいてください。
どのくらい大きくなるか
Java開発に使っているMacでは数GBになることが多く、多くのプロジェクトや大きなフレームワークを扱っている場合はさらに大きくなります。
手動で消去する方法
- 下記のコマンドを実行して、リポジトリの大きさを確認します。サイズを読み取るだけです。
- IDEを閉じ、実行中のビルドがあれば停止します。
- Finderで「移動」>「フォルダへ移動」と選択して ~/.m2 と入力し、repository フォルダをゴミ箱に入れます。settings.xml と settings-security.xml はそのままにしておきます。
- すべてをもう一度ダウンロードすることになるので、通信環境のよいときにプロジェクトを一度ビルドします。
du -sh ~/.m2/repository削除したあとはどうなるか
各プロジェクトの最初のビルドは遅くなり、ネットワーク接続が必要になります。mvn install でローカルにインストールした成果物は、そのプロジェクトをもう一度ビルドするまで失われたままです。ソースコードとMavenの設定には手が付けられません。
Diskzyでの扱い
Diskzyは、~/.m2 とそのサイズをディスクマップに表示し、「System Data」(システムデータ)では開発者データに含めて集計するので、リポジトリを消去する価値があるかどうかがわかります。
関連ガイド
Macの空き領域がどこに消えたのかを確認
Diskzyはディスク全体をマップにし、システムデータの内訳を示し、安全なものを消去します。72時間は無料、その後は$9の買い切りでMac 2台まで使えます。
Diskzyを無料で試す