在运行脚本时,我在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
当前回答
我在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工件
其他回答
53代表java-9,所以这意味着你拥有的任何类都是用javac-9编译的,你可以尝试用jre-8运行它。要么使用javac-8重新编译该类,要么使用jre-9
我写这篇文章是因为我发现其他答案很难理解。
基本上,您的JRE没有更新,并且/或Eclipse没有配置为使用最新的JRE。
在Windows操作系统下,进入“控制面板->程序-> Java ->更新”,继续更新Java
或者如果你没有Java,去甲骨文的网站下载最新的JRE。
完成后,进入eclipse,在项目视图下,右键单击项目,选择Java Build Path,双击JRE System Library,然后选择Workspace Default JRE 14.1。
如果这里没有显示最新版本的Java,则可能没有安装。检查您的JRE(不是JDK)版本,并确保它是最新的。如果是,请重新启动计算机,然后再试一次。
如果您正在使用IntelliJ IDEA并遇到此错误,请尝试此操作。
1. Command + , (Open Preferences)
2. Build, Execution, Deployment > Build Tools > Gradle
3. Gradle JVM > Change it to a proper version
我的错误类似:“UnsupportedClassVersionError:类已被最新版本的Java运行时编译。”
解决方案:我尝试将我的JAVA版本从15更新到17,它在我的情况下工作,而不是更新编译器中的所有JRE或做其他事情。
只需下载更新版本的JAVA,并将SYSTEM Variable中的路径更改为17
返回到项目并应用以下步骤:
选择你的项目——>点击属性(最后)---->选择JAVA构建路径——>改变JRE从15到17 ---->应用——>应用并关闭
对我来说,这个问题已经通过安装旧版本的testng解决了。看起来它与我的Java 8编译