运行我编译的JAR:"不支持的major.minor版本52.0"

时间:2014-08-11 21:20:10

标签: java jar

我刚刚从旧硬盘中恢复了一些程序,所以我尝试编译并运行它,并在命令提示符下出现此错误:

不受支持的major.minor版本52.0

我用Java 8编译了程序,然后用Java 8运行它。我唯一能想到的是我在旧计算机上使用Java 7和程序。此外,我在这台新电脑上使用Windows XP,而我在旧电脑上使用Windows 7。

我正在使用两个库,但我不认为这是问题,因为该程序在NetBeans中运行良好。

关于问题是什么的任何想法?

2 个答案:

答案 0 :(得分:1)

根据您对archetype的回答的评论,我的猜测是java 7位于您的一个Windows目录中,例如C:\ Windows \ System32,并且该目录位于路径中的JAVA_HOME目录之前。尝试在CMD上键入“where java”。如果它位于多个目录中,请查看PATH变量中哪一个首先出现,并查看该目录中的java版本。

答案 1 :(得分:0)

问题的根本原因是,代码是在更高版本中编译的,但默认运行时在较低版本上运行。您只需检查当前版本即可完成此操作。 java -versionjavac -version。您可能需要从Control Panel检查Java。要验证JAR文件的实际版本,您可能需要提取实际版本并查找版本信息

javap -verbose <Java_Class_Name> | findstr "major"