一大早回公司想打开 IDEA,准备魔改一下 Spark,突然发现前两天更新的 IDEA 打不开了(那天更新完后没有尝试打开),WTF。打不开的表现是双击图标毫无反应,我第一反应是,我系统有多个 IDEA,而且还有 N 个版本还有各种社区版交错,当然还有之前一直用的破解版,会不会是版本的问题呢?既然公司现在可以提供企业版,那就没理由继续盗版了,而且那是好几年前了。虽然电脑换过很多次了,但是每次都是 Time Machine,所以配置什么的是一直同步着的,而且 IDEA 是 Java 写的,找 BUG 找问题的思路跟开发 Java 应用的时候也应该是类似的。
于是按照以上的思路去排查。首先查看一下我有几个 IDEA,默认的地址是 ~/Library/Application Support/JetBrains/
,下图其实我已经删掉了 2018 版本的 IDEA 了,所以看起来只剩下今天装的两个,但是这不妨碍读者自己在这个默认安装目录下找自己打 IDEA。
看到多个版本的 IDEA,还有之前用的 2018 年的破解版,已经大概有点眉目了,应该是当年配置破解版的 IDEA 落下的问题。又知道作为 Java 应用,IDEA 应该是可以用命令行去打开的,然后尝试通过命令行的方式打开 IDEA,如下图。果然发现 ERROR 信息。也就是这个 jar 包缺失导致更新后的企业版无法启动,此时此景,我想到了 IDEA 的配置文件,也就是 idea.vmoptions
,关于这个配置文件的作用个,可以参考 Reference 的第二篇官方博客。
找到问题了,然后就是把配置文件那一行去掉。重新打开又遇到第二个问题,提示我有些插件找不到了。
然后我到 IDEA 默认的插件目录 ~/Library/Application Support/JetBrains/IntelliJIdea2020.1/plugins
查看,发现其实 IDEA 安装的时候其实已经读取了 JetBrains 文件夹里我原有 IDEA 的 Settings 配置了,这个问题挺奇怪的,虽然有说 2020 版本相比 2018 版本,已经将 Plugin 的路径修改了,所以可能需要做一些额外的配置,这一点我没有尝试,我是直接把 Plugins 目录下的文件删除掉,因为我其他 IDE 其实有 Plugins 的 Settings 文件,所以 IDEA 打开之后重新导入就可以了。
另外还需要注意的是 IDEA 有很多隐藏的配置文件目录,如果你的 IDEA 有问题或者是插件有问题,可以将这些隐藏文件备份好之后删除再重启你的 IDEA。
按照上面的步骤下来,就可以冲洗见到这个陌生又熟悉的界面了,cheers!
Reference
- https://intellij-support.jetbrains.com/hc/en-us/articles/360007568559
- https://intellij-support.jetbrains.com/hc/en-us/articles/206544869-Configuring-JVM-options-and-platform-properties