(Windows) 为什么我的 Java 和 JDK 是最新的 UnsupportedClassVersionError?

(Windows) Why am I getting UnsupportedClassVersionError with Java and JDK up to date?

我正在尝试 运行 命令提示符中的程序,一切顺利,直到我实际尝试在已编译的 class 上使用 java 命令并获得以下内容错误:

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: Main 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.access0(Unknown Source)
    at java.net.URLClassLoader.run(Unknown Source)
    at java.net.URLClassLoader.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 运行时和 JDK 是最新的。我的 JDK 版本是 13.0.2 并且 java -version 输出是

java version "1.8.0_241"
Java(TM) SE Runtime Environment (build 1.8.0_241-b07)
Java HotSpot(TM) Client VM (build 25.241-b07, mixed mode)

我查看了 Stack Overflow,但似乎每个人的版本都不对,所以有人知道这里出了什么问题吗?

在我看来一切正常。我想你已经用 13 编译了,但你尝试用 8 执行(正如我在你的 Java 1.8 输出中看到的那样。 您的默认 Java 是 8,因此如果您想使用 13,请尝试为 Java 命令指定完整路径