在Ubuntu上用Java创建的.class文件在Windows中的cmd中不起作用?

时间:2016-12-27 17:21:49

标签: java windows ubuntu cmd

当我在Windows中键入一个小代码并编译它时生成的.class文件,这应该是可处理的,即它应该在每个操作系统中解释之后显示输出,并且它在Ubuntu的终端中运行良好(因为我尝试过)它在Ubuntu)。但是在Ubuntu和.class文件中编译时生成的相同代码在Windows中的cmd中无法处理,即Windows中的cmd没有显示输出而是显示此错误

Exception in thread "main" java.lang.UnsupportedClassVersionError: UbuntuCode : Unsupported major.minor version 52.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:638)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:143)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:281)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:74)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:216)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:209)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:324)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:269)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:337)

其中" UbuntuCode"是我的文件名。我已经在互联网上搜索了它,但发现只安装了jre,jvm,jdk或版本不匹配等等。这背后的原因是什么以及如何解决它。提前致谢。将不胜感激。

修改: - 我在Ubuntu上安装了默认的jdk,在Windows上安装了jdk1.7.0

2 个答案:

答案 0 :(得分:1)

您没有正确的jdk版本来运行您的课程。 你需要一个JRE 8。

答案 1 :(得分:0)

从错误中,问题肯定与Java版本不匹配有关。当您尝试运行使用较低JRE版本的Java 1.8编译器编译的类时,会出现不支持的major.minor版本52.0。你能检查你在Windows和Ubuntu上使用的版本以及发布java -version输出吗?

您可以在http://javarevisited.blogspot.com/2015/05/fixing-unsupported-majorminor-version.html#ixzz4AVD4Evgv

了解更多详情