我想测试java.So的平台独立性,我写在Java中的Hello World程序,并使用编译器为Windows创建的HelloWorld.class文件编译它。然后我试图运行该文件在Linux(Ubuntu的)。我在错误结束了。(JRE的已安装在Linux)了解Java平台的独立性
Exception in thread "main" java.lang.UnsupportedClassVersionError: HelloWorld : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: HelloWorld. Program will exit.
然后我使用了Linux编译器编译相同的程序和使用的。 class文件来检查它是否在windows中运行。它完美地工作。
就我所知在两个场合的程序应该完美地工作,因为字节码文件(的.class)为平台,当我试图在Linux中运行该程序independent.What出了什么问题?
你甚至还能搜索该错误的网页?你试图在错误版本的Java上运行它。 –
Check here:http://stackoverflow.com/questions/2466828/java-lang-unsupportedclassversionerror-bad-version-number-in-class-file – Icarus