尝试更新IntelliJ IDEA时无响应并抛出ClassCastException错误
使用IntelliJ IDEA 2021.1.1.1版本升级至2021.1.1.3版本时,按Help > Check for Updates > Update > Update and Restart路径操作后程序无响应,日志报错如下:
2021-10-29 12:10:24,884 [268243632] ERROR -llij.ide.plugins.PluginManager - classcom.intellij.ide.plugins.IdeaPluginDescriptorImpl cannot be cast toclass com.intellij.ide.plugins.PluginNode(com.intellij.ide.plugins.IdeaPluginDescriptorImpl andcom.intellij.ide.plugins.PluginNode are in unnamed module of loadercom.intellij.util.lang.PathClassLoader @67b6d4ae)java.lang.ClassCastException: classcom.intellij.ide.plugins.IdeaPluginDescriptorImpl cannot be cast toclass com.intellij.ide.plugins.PluginNode(com.intellij.ide.plugins.IdeaPluginDescriptorImpl andcom.intellij.ide.plugins.PluginNode are in unnamed module of loadercom.intellij.util.lang.PathClassLoader @67b6d4ae) atcom.intellij.ide.plugins.newui.ListPluginComponent.createTag(ListPluginComponent.java:293)atcom.intellij.ide.plugins.newui.ListPluginComponent.(ListPluginComponent.java:105)atcom.intellij.openapi.updateSettings.impl.PluginUpdateDialog.createListComponent(PluginUpdateDialog.java:255)atcom.intellij.openapi.updateSettings.impl.PluginUpdateDialog.lambda$new$2(PluginUpdateDialog.java:115)atcom.intellij.ide.plugins.newui.PluginsGroupComponent.addToGroup(PluginsGroupComponent.java:200)atcom.intellij.ide.plugins.newui.PluginsGroupComponent.addGroup(PluginsGroupComponent.java:182)atcom.intellij.ide.plugins.newui.PluginsGroupComponent.addGroup(PluginsGroupComponent.java:73)atcom.intellij.ide.plugins.newui.PluginsGroupComponent.addGroup(PluginsGroupComponent.java:69)atcom.intellij.openapi.updateSettings.impl.PluginUpdateDialog.(PluginUpdateDialog.java:127)atcom.intellij.openapi.updateSettings.impl.PluginUpdateDialog.(PluginUpdateDialog.java:71)atcom.intellij.openapi.updateSettings.impl.UpdateInfoDialog.downloadPatchAndRestart(UpdateInfoDialog.java:218)...
该异常是第三方插件与IDE版本升级校验逻辑存在兼容性冲突,导致更新弹窗初始化失败,程序卡住无响应。
- 强制终止无响应的IDEA进程:Windows系统打开任务管理器结束
idea64.exe进程,macOS系统打开活动监视器结束IntelliJ IDEA进程 - 以安全模式启动IDEA:启动IDEA时长按Shift键直到进入安全模式,该模式会临时禁用所有第三方插件,规避兼容性冲突
- 重新执行升级操作:进入安全模式后,再次按
Help > Check for Updates > Update > Update and Restart路径操作,等待升级完成后IDEA会自动重启 - 恢复插件使用:升级到2021.1.1.3版本正常启动后,重新启用所有第三方插件即可。如果启用后出现异常,逐个排查不兼容插件,将其更新到适配2021.1.1.3的版本或直接卸载即可。
如果上述操作仍无法完成升级,直接下载2021.1.1.3版本完整安装包,覆盖安装到原IDEA安装路径即可,原有配置、项目、插件不会丢失。
内容的提问来源于stack exchange,提问作者Victor Soares

