PAYATHON 2026

IntelliJ IDEA 2026.1 无法启动并提示类归档被禁用,如何排查?

数据小许

这条提示通常不会导致 IntelliJ IDEA 启动失败。它表示 JVM 检测到设置了 java.system.class.loader,因此停用了部分 Class Data Sharing(CDS)类归档功能。由于缺少完整的启动异常,目前无法确定故障原因,也不能认定修改某一行 VM options 就能解决问题。

建议先保留完整启动输出,再检查实际生效的 VM options 和 IDE 使用的 Java Runtime。

这条提示说明了什么?

OpenJDK 的对应逻辑会发出 CDS 警告,禁止使用归档中的平台类或应用类,但不会因此要求 JVM 退出。可参见 OpenJDK 源码。

你贴出的参数中没有 -Djava.system.class.loader=...。只检查这份文件还不够,需要确认完整的启动参数及其来源。

下面这行设置的是文件系统提供者,与 java.system.class.loader 是不同的属性。不能因为警告提到了类加载器,就直接删除这行配置:

-Djava.nio.file.spi.DefaultFileSystemProvider=com.intellij.platform.core.nio.fs.MultiRoutingFileSystemProvider

1. 从命令行获取完整启动错误

根据 idea64.exe.vmoptions 文件名,以下按 Windows 环境说明。在 CMD 中执行,将安装目录替换为实际路径:

cd /d "C:\实际安装目录\bin"
idea.bat > "%TEMP%\idea-startup.log" 2>&1

如果安装目录中有 idea.bat,可以通过它观察启动输出。这是 JetBrains 文档介绍的启动方式。

启动失败后,打开 %TEMP%\idea-startup.log,查看 CDS 警告附近及后续的异常,例如 Error occurred during initialization of VM、Exception 和 Caused by:。保留完整异常链,不要只截取第一条警告。

也可以检查 idea.log。Windows 默认日志通常位于:

%LOCALAPPDATA%\JetBrains\<产品及版本目录>\log\idea.log

实际路径取决于产品版本和目录配置。如果失败发生得很早,日志可能尚未生成。目录说明见 JetBrains 日志与配置目录文档。

2. 确认实际生效的 VM options

安装目录中的文件可能被用户配置覆盖。JetBrains 文档给出的检查顺序包括 IDEA_VM_OPTIONS、Toolbox 管理的配置、用户配置目录,以及安装目录中的默认文件。参见 JVM 配置说明。

先在 CMD 中查看是否设置了覆盖路径:

set IDEA_VM_OPTIONS

如果该变量存在,检查它指向的文件;如果没有,再检查当前版本的用户配置目录中是否存在自定义 .vmoptions 文件。

如果存在自定义配置,可以按以下步骤验证:

  1. 退出 IDE,备份自定义 .vmoptions 文件。
  2. 暂时将自定义文件改名;如果 IDEA_VM_OPTIONS 指向该文件,也暂时取消这项覆盖。
  3. 使用当前安装包自带的默认配置重新启动。

如果安装目录中的默认文件也被修改过,应从相同版本、相同构建的官方安装包恢复。不要凭经验拼出一份“最小参数列表”,也不要仅凭当前这份列表断定某个参数不兼容。

如果恢复默认配置后能够启动,再逐项恢复确有需要的自定义参数,观察哪项改动会重新触发故障。

3. 检查是否覆盖了 JetBrains Runtime

IntelliJ IDEA 默认使用随 IDE 提供的 JetBrains Runtime。自定义运行时可能与新版本不兼容,IDE 的启动运行时与项目 SDK 是两项独立设置。参见 JetBrains 启动运行时说明。

先检查是否设置了运行时覆盖:

set IDEA_JDK

如果它指向另外安装的 JDK,可以记录原值,暂时取消覆盖,再使用 IDE 自带的运行时测试。如果以前手动选择过启动运行时,还应检查用户配置目录中的 idea.jdk 或 idea64.jdk;备份并移走对应文件即可撤销这项选择。

修改项目 SDK 无法替代这一步。

仍然无法启动时应提供什么?

需要补充完整启动输出、idea.log(若已生成)、具体构建号,以及恢复默认 VM options 和默认运行时后的结果,再根据实际异常决定修复方向。

不要为了消除 CDS 警告而直接删除 IDE 使用的类加载器配置。判断修复是否成功,应以 IDE 能否正常启动为准。

备注:内容仅供参考。