在 Mac 上卸载 IntelliJ IDEA
动手删除任何文件夹之前,先退出 IntelliJ IDEA,并且优先用 IDE 自带的清理工具,而不是自己手动删。项目和 .idea 文件夹存在你自己安排的位置,从来不属于卸载的范围;这份指南说的是 IntelliJ IDEA 自己的设置、缓存和日志。它覆盖 JetBrains 官网直接下载的版本,以及 Homebrew cask intellij-idea(装的是 IntelliJ IDEA Ultimate);两者装的是同一个应用本体,所以下面的路径两边都适用。通过 JetBrains Toolbox 安装是另一条独立的分发渠道,有自己的应用和更新机制,不在下面的测试范围内。
先试试 IDE 自带的清理
删任何东西之前,先用「File › Invalidate Caches」,它会清掉缓存和索引并提示重启,这是修复索引失效而不碰设置的官方推荐方式。具体菜单文字以你自己版本里显示的为准,JetBrains 每个版本都可能改名字。对于不再用的旧版本 IDE,「Help › Delete Leftover IDE Directories…」会找出那个版本的设置、缓存和日志文件夹,让你自己选要删哪些;仍在装的版本默认不选。想了解每个文件夹里到底是什么、安全的清理顺序,见 JetBrains 缓存在 Mac 上怎么清(IntelliJ、WebStorm、PyCharm)。
退出并移除应用
从菜单退出 IntelliJ IDEA,再把「应用程序」里的 IntelliJ IDEA.app 拖进废纸篓。卸载不会碰你的项目,也不会取消 JetBrains 的授权或订阅。
IntelliJ IDEA 的数据放在哪里
每个大版本在共享的 JetBrains 父目录下各有自己的子文件夹,命名为 IntelliJIdea<year>.<release>(例如 IntelliJIdea2026.2)。移除应用只会移除当前这个版本的子文件夹;JetBrains 父目录本身被这台 Mac 上其他 JetBrains 产品共用,永远不会被碰。
| 位置 | 里面是什么 | 如何处理 |
|---|---|---|
~/Library/Application Support/JetBrains/IntelliJIdea<year>.<release> |
该版本的设置、插件、本地历史记录 | 列出但不默认勾选;这是你的配置和插件数据,本地历史记录里可能还有你最近的改动 |
~/Library/Caches/JetBrains/IntelliJIdea<year>.<release> |
编译出的搜索数据、索引 | 列出但不默认勾选;下次建索引会自动重建 |
~/Library/Logs/JetBrains/IntelliJIdea<year>.<release> |
诊断日志 | 列出但不默认勾选;排查完问题后可以放心删 |
~/Library/Preferences/com.jetbrains.intellij.plist |
应用级偏好设置 | 默认勾选,删除是安全的 |
~/Library/Saved Application State/com.jetbrains.intellij.savedState |
保存的窗口状态 | 默认勾选,删除是安全的 |
共享的 ~/Library/Caches/JetBrains、~/Library/Application Support/JetBrains、~/Library/Caches/com.jetbrains.toolbox 这三个父目录,不管是「清理」还是卸载,Mole 都不会拿出来给你删,因为里面并排放着这台 Mac 上每个 JetBrains 产品的数据,不只是 IntelliJ IDEA 的。
检查结果
在终端运行下面的只读命令:
pgrep -il "idea"
ls -d ~/Library/Application\ Support/JetBrains/IntelliJIdea*
ls -d ~/Library/Application\ Support/JetBrains
pgrep 没有输出,说明没有 IntelliJ IDEA 进程还在运行。第一条 ls -d 会列出这台 Mac 上还留着的所有按版本命名的 IntelliJ IDEA 文件夹(如果你特意没勾选那一行,这是正常结果),等每个版本都删完,它会提示「No such file or directory」。第二条 ls -d 显示共享的 JetBrains 文件夹,只要你还装着任何其他 JetBrains 产品,它通常仍然存在。
用 Homebrew 安装时
下一次 Mole 更新会先检查 zap 清单,涉及未勾选的数据、其他应用共用的文件或无法确认的内容时不执行 --zap,已勾选的残留仍由 Mole 清理。Preview 290 尚未包含这项保护。
Mole Preview 290 移除 Homebrew 安装的 IntelliJ IDEA,效果和 brew uninstall --cask --zap intellij-idea 一样。这个 cask 的 zap 清单不管你在 Mole 里勾没勾都会执行,会把按版本命名的设置、缓存、日志文件夹(Application Support/JetBrains/IntelliJIdea<year>.<release>,以及 Caches 和 Logs 下对应的文件夹)、应用级偏好设置文件、一个旧式的 Preferences/IntelliJIdea<year>.<release> 文件夹、Preferences/jetbrains.idea.*.plist,还有保存的窗口状态一并移进废纸篓,和上面表格描述的是同一批数据,只是没得选保留。想留设置和本地历史记录就先备份,或者只移除应用本体:
brew uninstall --cask intellij-idea
Mole 会列出什么
以下是 Mole 1.15(目前为 Preview)的处理。按版本命名的设置、缓存、日志文件夹列出但不默认勾选,这一点已在代码里核实:Mole 的卸载扫描器把共享厂商父目录(JetBrains、Google 等)下任何按版本命名的产品文件夹都当作需确认项,共享父目录本身则从不提供删除。以 bundle identifier 而不是版本号命名的应用级偏好设置文件和保存的窗口状态,和其他应用的偏好设置一样默认勾选。
这次检查覆盖了什么
测试用的 IntelliJ IDEA Ultimate 通过 Homebrew cask intellij-idea 安装,2026 年 9 月 19 日用一个开发版 Mole 卸载。按版本命名的产品文件夹已经被 Mole 既有的「产品名后面直接跟版本号」规则覆盖,没有发现新的残留。JetBrains Toolbox 安装、官网直装 DMG,以及同一台机器上其他 JetBrains IDE 共存的情况,都不在这次测试范围内。
