由于这个问题,我卸载了 Eclipse IDE。然后我尝试在我的 Linux mint 终端中运行 java 程序。所以我从一个小代码开始
public class Myth{
public static void main(String[]args){
System.out.println("Hii There");
}
}
并通过给出命令来运行它,javac Myth.java
但java Myth
不给出输出它给出了以下错误
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: JVMCFRE003 bad major version; class=Myth, offset=6
at java.lang.ClassLoader.defineClassImpl(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:379)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:154)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:729)
at java.net.URLClassLoader.access$400(URLClassLoader.java:95)
at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:1184)
at java.security.AccessController.doPrivileged(AccessController.java:732)
at java.net.URLClassLoader.findClass(URLClassLoader.java:604)
at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:926)
at java.lang.ClassLoader.loadClass(ClassLoader.java:871)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:343)
at java.lang.ClassLoader.loadClass(ClassLoader.java:854)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:507)
这个
意味着,您项目中的某些库正在使用不同版本的 java ,并在路径中进行相应设置。快速解决此问题:
输出->当前 java 的位置(例如 /usr/bin/java)
output->1.7.0 或 1.8.0 如果是这种情况,请尝试切换版本,为此请执行以下操作:
这允许新路径出现在旧路径之前,对于 eclipse 特定的错误,请查看主目录中的 eclipse 缓存(项目中的 .eclipse 文件夹)。您可以安全地删除此目录以及 .project 文件(如果有)并重新编译。
编辑:Offset=6 表示您当前的 java(JDK) 版本是 1.6。尝试将其切换到更高版本。还要检查您使用的是 Jdk 路径而不是 jre 路径