在运行脚本时,我在Eclipse控制台中得到以下错误消息:

类已经由最新版本的Java环境(类文件版本53.0)编译,该版本的Java运行时只识别52.0以下的类文件版本。


Java版本:8 IDE: Eclipse Oxygen Firefox版本:46


当前回答

刷新gradle依赖为我工作:右键单击项目-> gradle ->刷新gradle项目。

其他回答

我写这篇文章是因为我发现其他答案很难理解。

基本上,您的JRE没有更新,并且/或Eclipse没有配置为使用最新的JRE。

在Windows操作系统下,进入“控制面板->程序-> Java ->更新”,继续更新Java

或者如果你没有Java,去甲骨文的网站下载最新的JRE。

完成后,进入eclipse,在项目视图下,右键单击项目,选择Java Build Path,双击JRE System Library,然后选择Workspace Default JRE 14.1。

如果这里没有显示最新版本的Java,则可能没有安装。检查您的JRE(不是JDK)版本,并确保它是最新的。如果是,请重新启动计算机,然后再试一次。

从spring initizer初始化我的项目时遇到了同样的问题 我们需要匹配java的版本。“build.gradle”中用于运行和编译的sourceCompatibility和jvmTarget。kt”文件。

你可能在IntelliJ中也会看到这个错误,在谷歌中也会出现。

我认为这是一个Gradle错误而不是IDE错误。

修复(从这里偷来的)是在IntelliJ中将Java 11配置为Gradle JVM:

文件->设置->构建,执行和开发->构建工具-> Gradle并将Gradle JVM更改为11

这张截图也是从《Jetbrains》中偷来的

您应该检查您的Project Facets。

项目属性>项目facet

将java版本更改为您正在使用的相同版本。这对我很有用!

我在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工件