java - 尽管 Java 版本相同,但仍出现 UnsupportedClassVersionError

标签 java swing class unsupported-class-version

尽管如此,我在目标计算机上还是收到此错误:

  1. 我的源计算机和目标计算机都安装了相同版本的 Java - 1.6 第 26 次更新
  2. 我以类似方式编译和运行的所有文件都运行完美,除了这个 - 它是我的应用程序的 Swing GUI
  3. 另外,我没有使用任何 IDE,我使用普通记事本进行编辑

尽管存在三个约束,但为什么会出现 UnsupportedClassVersionError 及其解决方案?

注意:该文件是一个简单的 GUI 前端代码,它在源代码上完美运行,它使用了 AWT 和 SWING 中的简单库

Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file
        at java.lang.ClassLoader.defineClass1(Native Method)
        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$100(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)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)

最佳答案

不幸的是,事实上您的主类是用比您运行它的版本更新的 Java 编译器编译的。该文件或您的类文件以其他方式严重损坏。检查您是否没有 java 的多个版本和javac安装并在您的PATH上。您可能还想尝试传递 -target 1.6到javac;如果您正在运行(例如)javac 1.7,这将指示它生成与 Java 1.6 兼容的代码。

请记住,您可以安装不同版本的 JRE 和 JDK - 根据您的 PATH 顺序,您的系统可能会选择 Java 1.7 javac但是 Java 1.6 为 java .

此外,如果您的类路径上有任何第三方库,您应该确保它们也不是使用较新版本的 Java 编译的。如果您的其他类没有使用第三方库,则可能掩盖了问题。

关于java - 尽管 Java 版本相同,但仍出现 UnsupportedClassVersionError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10257200/

相关文章:

javascript - 在其他页面中使用 javascript 更改类

java - 如何根据 IEEE-754 格式将十六进制值转换为单精度 float 以及 double float

java - 将 JVM 参数传递到 list 文件(用于 JRI + Javafx 部署)

java - 按下按钮但未到达单击事件时应用程序崩溃

java - 如何扩展 BufferedImage 以创建由多个 BufferedImage 组成的 "animated image"

java - 如何调用不在默认包中的 Bean 类

java - 如何使用 javascript 使用 selenium Webdriver 使用 java 设置所选 Web 元素的属性?

java - 如何将 JOptionPane.showOptionDialog 的默认选择更改为 default_close_operation

java - 不确定这个 Java 代码示例中发生了什么

c++ - 具有某些不会在逻辑上定义的属性的类的概念