Mac の JetBrains キャッシュ(IntelliJ、WebStorm、PyCharm)
IntelliJ IDEA、WebStorm、PyCharm といった JetBrains の IDE は、Mac 上に数ギガバイトのディレクトリをいくつも残しますが、安全に消せるのはその一部だけです。キャッシュとインデックスは次回起動で再構築されますが、設定、プラグイン、プロジェクトデータはそうではありません。この違いが、片付けを設定の消失や壊れたプロジェクトに変えないための境目です。
このページは一般的な開発キャッシュ記事の JetBrains 専用版です。本文の「Mole」は mole.fit の Mole for Mac と、その付属の mo コマンドラインツールだけを指します。IDE ごとのギガバイト数は載せません。ばらつきが大きく参考にならないためで、自分のマシンで測ります。
JetBrains が保存するもの、そして単なるキャッシュではないもの
JetBrains のインストールは、復旧コストが大きく異なる複数のディレクトリです。それらを一つのフォルダとして扱うのが、片付けが失敗する場所です。
| 層 | 何を保持するか | 再生成できるか |
|---|---|---|
| キャッシュ | コンパイル済みの検索データと一時作業ファイル | できる。次回起動時 |
| インデックス | コードを辿るために IDE が作るプロジェクトインデックス | できる。再インデックスで |
| ログ | トラブルシューティング用の診断テキスト | できる。安全に消せる |
| 設定 | キーマップ、コードスタイル、環境設定 | できない。これはあなたの設定 |
| プラグイン | インストール済みプラグインとそのデータ | 一部。再インストールでローカルの状態は失われる |
| プロジェクトデータ | .idea フォルダと Local History |
できない。これはプロジェクトと個人の成果 |
最初の三つは自ら再構築されるので安全な対象です。あとの三つはあなたの設定と成果で、どのフォルダにあってもキャッシュではありません。
IDE 自身のツールを優先する
どのフォルダを消す前にも、まず IDE 内蔵の経路を使います。File > Invalidate Caches はキャッシュとインデックスを消して再起動を提案します。設定に触れずに古いインデックスを直す公式のやり方です。正確なメニュー表記はお使いの IntelliJ、WebStorm、PyCharm のバージョンで確認してください。メニューのラベルはリリースごとに変わります。
複数の JetBrains 製品を Toolbox App で管理しているなら、製品ごとの片付けと各インストールの場所も示されます。フォルダを手で確認する前に IDE を終了し、実行中のプロセスがまだ開いているファイルを消さないようにします。
Mac でシステムディレクトリを見つける
JetBrains はディレクトリの場所をバージョンごとに記載しており、製品とバージョンの具体的なサブフォルダはマシンごとに異なるので、古い絶対パスを貼るのではなく IDE から自分のものを見つけてください(Help がログと設定フォルダを指します)。現在のバージョンでは、macOS の親フォルダは ~/Library/Caches/JetBrains と ~/Library/Application Support/JetBrains、ログは ~/Library/Logs/JetBrains です。
何かを消す前に、親ディレクトリを測って重さがどこにあるか見ます。
du -sh ~/Library/Caches/JetBrains ~/Library/Application\ Support/JetBrains
Caches 側の容量には Local History も含まれるため、すべてを消せるキャッシュとは考えられません。設定とプラグインは Application Support 側にあります。
安全な手順
- IDE から Invalidate Caches を実行し、ナビゲーションが変なら一度だけ再インデックスする。
- JetBrains の親フォルダを測り、容量の場所を把握する。
- IDE のダイアログからキャッシュとインデックスを消し、Local History を消す追加項目は選ばない。ログは別に確認する。
.ideaや Local History を安易に消さない。それはプロジェクトと個人の成果です。- IDE を再起動し、容量が戻ったことを確認してから次へ進む。
パッケージマネージャーや散らばった node_modules フォルダとの重なりは別の記事です。Mac の開発キャッシュを消す方法は npm、Cargo、pip、Gradle を、Xcode を片付ける方法は Apple のツールチェーンでも作るなら DerivedData を扱います。IDE は JDK ではないので、ランタイムの削除は別作業で、Mac で Java をアンインストールするにあります。
ディスクマップが役立つとき
JetBrains のフォルダが大きいとわかったら、ディスクマップはどの製品のどのバージョンが重いかを見るのに役立ちます。Mole の Analyze は大きなディレクトリをパスとサイズ付きで一覧表示して確認でき、Clean はキャッシュ候補を挙げます。スキャンはライセンスなしで無料で、何を削除するかはあなたが決めます。これは mo purge とは別の仕事で、後者は IDE キャッシュではなく再生成できるプロジェクトのビルド出力を一掃します。Mac の purge を整理するにあります。Mole が何を確認し、何に触れないかはMole は安全かを参照してください。
関連記事
- Mac の開発キャッシュを消す方法:パッケージマネージャーと
node_modulesの側面。 - 削除しても安全な Mac のキャッシュ:再生成できるかどうかの一般ルール。
- Mole は安全か:確認してから削除するツールが何を消し、何を消さないか。
よくある質問
キャッシュを消すとプロジェクトは消えますか?
通常の Invalidate Caches ではプロジェクトのファイルも Local History も消えません。ただし Local History はシステムディレクトリ内にあり、ダイアログにはそれを消す別の項目があります。その項目は選ばないでください。
Invalidate Caches とシステムディレクトリの削除、どちら?
Invalidate Caches は再起動時にキャッシュとインデックスを消し、追加項目を選ばなければ Local History は残ります。システムディレクトリを丸ごと手で消すと Local History を失うことがあります。設定とプラグインは通常 Application Support 側にあります。
複数の IDE や Toolbox:一度に片付けるか、製品ごとか?
各製品とバージョンが独自のサブフォルダを持つので、キャッシュは製品ごとに溜まります。各 IDE か Toolbox App から製品ごとに片付け、何かを消す前に JetBrains の親フォルダを測ってどのインストールが実際に大きいかを見ます。