Gradle-IntelliJ报错:语义分析阶段异常,不支持类文件主版本64
刚从GitHub下载代码仓库后,运行时触发如下错误:
Could not open init generic class cache for initialization script C:\Users\hamzi\AppData\Local\Temp\wrapper_init.gradle' (C:\Users\hamzi\.gradle\caches\8.0\scripts\asuznngwu6usyi0wiwvf77d4m). > BUG! exception in phase 'semantic analysis' in source unit '_BuildScript_' Unsupported class file major version 64 * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights.
尝试将项目Java版本从17改为11后,IntelliJ IDEA完全无法启动;调整依赖也未解决问题。
错误根源
Unsupported class file major version 64 对应Java 20,而你使用的Gradle 8.0仅兼容JDK 11-19,版本不匹配导致报错。修改项目Java版本到11后IDE无法启动,是因为IDE自身的JDK配置和项目配置冲突。
修复步骤
指定Gradle使用兼容的JDK版本
打开项目根目录的gradle.properties文件(没有则新建),添加以下配置(替换为你本地JDK 17的实际路径):org.gradle.java.home=C:/Program Files/Java/jdk-17Gradle 8.0支持JDK 11-19,选17既能兼容项目原版本,又符合Gradle要求。
修复IntelliJ IDEA的JDK配置
找到IDE安装目录下的bin文件夹,打开idea64.exe.vmoptions文件(Windows系统),添加或修改以下行,指定IDE使用的JDK路径(建议用JDK 17):-Djdk.home=C:/Program Files/Java/jdk-17保存后重启IDE。
同步项目配置
重启IDE后,点击Gradle面板的「Refresh all gradle projects」;再通过File > Project Structure > Project确认Project SDK和Project language level都设置为17。清理Gradle缓存(可选)
删除C:\Users\hamzi\.gradle\caches目录下的所有内容,重新同步项目,避免缓存残留的版本冲突。
内容的提问来源于stack exchange,提问作者hamziejam

