java 编译器和虚拟机的版本不匹配

时间:2022-12-27 15:05:08

一时兴起,想写点关于密码学的小程序

Coding

十分钟后。。。

无语,抛异常如下:


Exception in thread "main" java.lang.UnsupportedClassVersionError: Hello (Unsup
orted major.minor version 51.0)
at java.lang.ClassLoader.defineClass0(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.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 java.lang.ClassLoader.loadClassInternal(Unknown Source)


有点陌生,这下可懵了;本能的反应问问了度娘得答案:

Java虚拟机的版本低于编译器的版本,造成虚拟机抛出异常。

解决的方法有两个:
1、重新安装较高版本的虚拟机
2、使用早期版本的JDK重新编译源代码