【发布时间】:2021-02-20 19:38:13
【问题描述】:
我在尝试复习我的 Java 时遇到了几次这个错误。在互联网上查找解决方案,大多数建议是编译或运行带有标志/选项参数的文件以指定正确的解释器版本。我的问题是,有没有更永久的解决方案? (我正在使用 vscode。猜想我可以在工作区中的 settings.json 文件中添加一些东西——但是什么?)
Error: LinkageError occurred while loading main class com.example.demo.DemoApplication
java.lang.UnsupportedClassVersionError: com/example/demo/DemoApplication has been compiled by a more recent version of the Java Runtime (class file version 59.65535), this version of the Java Runtime only recognizes class file versions up to 58.0
这是我的版本详情
$ java --version
java 14.0.2 2020-07-14
Java(TM) SE Runtime Environment (build 14.0.2+12-46)
Java HotSpot(TM) 64-Bit Server VM (build 14.0.2+12-46, mixed mode, sharing)
每当我从命令行编译和运行 java 文件时,我都希望不必使用标志。如果您能首先解释为什么会发生此问题,那么您会得到奖励吗?以前学java的时候,JRE和JDK都是分开下载安装的。我可以理解错误地下载了不兼容的版本,但现在 JRE 似乎与 JDK 一起预打包。如果是这种情况,怎么可能有不兼容的编译器和解释器版本?
【问题讨论】:
标签: java visual-studio-code vscode-settings javac java-14