IntelliJ搭配Erlang插件编译时构建失败,报错Java类文件版本不兼容
问题根因
org/intellij/erlang/jps/model/JpsErlangModelSerializerExtension 由更高版本的Java Runtime编译(类文件版本为55.0),当前使用的Java Runtime版本仅可识别最高52.0的类文件版本
- 类文件版本55.0对应Java 11,52.0对应Java 8
- 项目中用到的IntelliJ Erlang JPS插件是基于Java 11编译的,但当前构建环境配置的JDK版本为Java 8,低版本JDK无法加载高版本编译的类,因此构建失败。
解决方案
方案1:升级构建环境JDK版本(推荐)
- 将项目构建使用的JDK版本升级到Java 11或更高版本
- 若使用IntelliJ IDEA进行构建,修改路径:
File → Project Structure → Project Settings → Project → SDK,选择Java 11+版本即可 - 若使用Gradle/Maven等构建工具,修改对应配置文件的JDK目标版本:
以Gradle为例,修改build.gradle配置:
以Maven为例,修改pom.xml配置:java { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 }<properties> <maven.compiler.source>11</maven.compiler.source> <maven.compiler.target>11</maven.compiler.target> </properties> - 配置修改完成后重新执行构建操作即可
方案2:降级Erlang JPS插件版本
如果暂时无法升级JDK版本,可以选择安装支持Java 8编译的旧版Erlang插件,选择版本低于0.11.0的IntelliJ Erlang插件安装,重启IDE后再执行构建即可。
内容的提问来源于stack exchange,提问作者chandan
相关产品推荐
相关产品推荐

