在运行脚本时,我在Eclipse控制台中得到以下错误消息:
类已经由最新版本的Java环境(类文件版本53.0)编译,该版本的Java运行时只识别52.0以下的类文件版本。
Java版本:8 IDE: Eclipse Oxygen Firefox版本:46
在运行脚本时,我在Eclipse控制台中得到以下错误消息:
类已经由最新版本的Java环境(类文件版本53.0)编译,该版本的Java运行时只识别52.0以下的类文件版本。
Java版本:8 IDE: Eclipse Oxygen Firefox版本:46
当前回答
在我的情况下,我使用IntellJ Idea和设置JDK11作为我的SDK和JDK17在gradle设置。
只要把我的SDK更新为JDK17,问题就解决了
检查“项目设置”(CMD+;) -> SDK中的JDK
with
“头参考资料”中的“gradle JVM”(CMD+) ->内置工具-> gradle JVM
其他回答
我在Intellij中遇到了这个错误。显然,选择java 1.8作为项目SDK并不会影响用于构建项目的javac编译器。
要更改,请进入设置->构建,执行,部署->编译器-> Java编译器,并将项目字节码版本更改为8。
通过导航到“设置->构建,执行,部署>构建工具> Gradle”来检查IDE中配置的Java版本
JDK版本:Java 8 您的JRE版本:Java 9
这里的JRE版本与JDK版本不同,就是这样。在这里,您可以使用JDK 1.8版本编译所有java类。如果你只想编译一个java类,只需将*.java更改为<yourclassname>.java
javac -source 1.8 -target 1.8 *.java
source:编译源代码所需的版本。 target:您希望支持的旧JRE版本。
对于Android Studio,文件->项目结构[Ctrl + Alt + Shift + S]
我在Windows 10上复制了类似的问题,格式如下:
Error: LinkageError occurred while loading main class ...
java.lang.UnsupportedClassVersionError: com/.../ServiceApplication
has been compiled by a more recent version of the Java Runtime (class file version 62.0),
this version of the Java Runtime only recognizes class file versions up to 61.0
将项目从Java 17升级到Java 18。
我有关于Java 18的项目设置:
命令行:
Java版本“18.0.1.1”2022-04-22 Java(TM) SE运行时环境(build 18.0.1.1+2-6) Java HotSpot(TM) 64位服务器虚拟机(build 18.0.1.1+2-6,混合模式,共享)
项目结构->项目设置->项目:
项目结构->项目设置->模块:
项目结构->平台设置-> sdk:
这个问题的原因是:
我忘记为运行/调试配置指定正确的版本->构建并运行到Java 18而不是Java 17:
因为它是用较新的Java版本编译的,但运行在较旧的版本上。
如果是与maven相关的问题,您可以通过指定Java编译器的-source和-target来修改POM。
其他有用的链接:
在Maven中设置Java版本 使用特定Java版本的Jar工件