Exception in thread “main“ java.lang.UnsupportedClassVersionError

java MainDemo执行main方法报错

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: MainDemo has been compiled by a more recent version of the Java Runtime (class file version 61.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) 

 分析:

检查编译的版本:

javac -version

检查运行的版本:

java -version

 问题在于用低版本的jdk编译的class文件,然后在高版本的JVM上运行所导致的。

即编译运行版本不匹配。

扫描二维码关注公众号,回复: 15234177 查看本文章

解决:

修改环境变量让他们的版本匹配

更新为:

 

 配置完成 之后,重启cmd

 显示2个版本相同,运行java xxxxmain 方法通过 。

猜你喜欢

转载自blog.csdn.net/LlanyW/article/details/130599044