【发布时间】:2023-03-15 20:35:02
【问题描述】:
从命令行编译时出现错误,如何获取所需的Java Runtime版本?
java.lang.UnsupportedClassVersionError: hello 已被编译 Java 运行时的更新版本(类文件版本 57.0), 此版本的 Java 运行时仅识别类文件版本 高达 52.0
C:\Users\s\Documents\Documents>javac hello.java
C:\Users\s\Documents\Documents>java hello
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: hello has been compiled by a more recent version of the Java Runtime (class file version 57.0), this version of the Java Runtime only recognizes class file versions up to 52.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
【问题讨论】:
-
你安装了哪个版本的Java?
-
@NoahBroyles java 版本“1.8.0_231”
-
javac 版本 13.0.1
-
@SwetaJain 确保您使用与 JRE 相同的 JDK 版本。
标签: java javac .class-file