javajni错误。lang.UnsupportedClassVersionError
我正在尝试运行以下简单的HelloWorld代码:
public class HelloWorld{
public static void main(String[] args) {
System.out.println("Hello, World");
}
}
它编译得很好,但当我尝试运行它时,会出现以下错误:
我相信我有最新的jdk和jre。我是java的新手,非常感谢您的帮助
你可以在下面搜索框中键入要查询的问题!
我正在尝试运行以下简单的HelloWorld代码:
public class HelloWorld{
public static void main(String[] args) {
System.out.println("Hello, World");
}
}
它编译得很好,但当我尝试运行它时,会出现以下错误:
我相信我有最新的jdk和jre。我是java的新手,非常感谢您的帮助
# 1 楼答案
是的,看到这样一个问题,这是因为您用来编译代码的jdk版本与您在IDE上运行的jdk版本不同(很可能是Eclipse)
您可以在以下位置更改设置: 项目财产>;Java构建路径>;图书馆>;选择首选的JRE编译器
# 2 楼答案
从您发布的Windows命令提示符图像来看,您似乎在Windows 7上
where
命令将显示文件java.exe
和javac.exe
的路径在命令提示下输入以下命令:
在安装了JDK 12.0.1的Windows 10计算机上,上述命令的输出为:
和
javac.exe
javac.exe
的文件夹必须包含在PATH
环境变量中,否则where
命令将找不到它java.exe
的文件夹不需要包含在PATH
中。您可能已经定义了JAVA_HOME
环境变量,但即使这样也不是必需的在任何情况下,正如其他人所说,较低版本的JDK都不能运行使用较高版本编译的代码(尽管允许使用相反的版本,即您可以使用较低版本编译,然后使用较高版本运行)
看起来您安装了多个JDK(或JRE)版本。您需要决定要使用哪个环境变量,并修改
PATH
环境变量,使其包含包含文件javac.exe
的所需文件夹如果您不需要安装多个java版本,我建议您删除所有不需要的java版本