gpt4 book ai didi

java - 如何修复 Java UnsupportedClassVersionError

转载 作者:行者123 更新时间:2023-12-04 08:37:15 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How to fix java.lang.UnsupportedClassVersionError: Unsupported major.minor version

(51 个回答)


6 个月前关闭。




我在尝试复习我的 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 版本上编译的。更具体地说,在这种情况下,您使用 Java 15 编译了您的类并尝试使用 Java 14 运行它。
根据您的情况,您有两种解决错误的方法:使用较早版本的 Java 编译代码,或在较新的 Java 版本上运行代码。
通过命令行修复 .如果您准备完全迁移到较新的 JDK,则应下载较新版本并确保正确设置 PATH 和 JAVA_HOME 环境变量。假设您有 Java 15 JRE,您可以使用打包的 java 命令运行您的代码。
IntelliJ IDEA .您还可以控制用于在 IntelliJ IDEA 中编译和运行的 Java 版本。转到文件 -> 项目结构... -> 项目设置 -> 项目并更改您的项目 SDK 和项目语言级别。接下来在较新的 JRE 上运行您的项目:转到 Run -> Edit Configurations... 并将您的 JRE 更改为 15。现在,当您运行您的项目时,它将与 Java 15 JRE 一起运行。

关于java - 如何修复 Java UnsupportedClassVersionError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64742252/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com