0

我遵循了一些在线教程并构建了一个小 GUI。我试图通过在 Netbeans 中清理和构建项目来制作 jar 文件,但由于某种原因,jar 文件不允许我打开。我错过了其他东西吗?

好的,这是我输入后会发生的事情java -jar GUI2.jar

Exception in thread "main" java.lang.UnsupportedClassVersionError: gui2/GUI2 : U nsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) 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$000(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) Could not find the main class: gui2.GUI2. Program will exit
4

3 回答 3

0

如果要执行 JAR 文件,可以从命令行“java -jar yourJarFilePathHere”运行。

另外,看看这个SO帖子......

https://stackoverflow.com/a/5258323/1246574

于 2013-07-22T19:59:14.653 回答
0

不支持的 major.minor 版本 51.0

这说明运行环境不支持编译的类的格式

将 JRE 升级到受支持的版本,或者通过添加-source开关来编译具有运行时环境兼容性的源代码

对于netbeans:右键单击项目>属性>源选择与您的运行时版本兼容的源版本(来自您运行它的终端的java -version)并重建jar

于 2013-07-22T20:07:50.163 回答
0

问题是当您编译一个 java 文件时,它会针对某个 Java 版本(1.6、1.7 等)。因此,如果您为 1.7 版本编译项目,但在您的计算机上只安装了 1.6,当您尝试运行它时,它会给您这个 Unsupported major.minor version 错误。这只是意味着目标版本和安装的版本不匹配。

解决方案:从命令行使用 java -version 检查计算机上当前安装的 Java 版本。我会继续更新以确保安全。然后在您的 Netbeans 设置中检查目标(右键单击您的项目名称 -> 属性 -> 源 -> 源/二进制格式)

于 2013-08-01T19:12:58.583 回答