【问题标题】:Peculiar Eclipse java.lang.UnsupportedClassVersionError, Unsupported major.minor version 52.0特殊的 Eclipse java.lang.UnsupportedClassVersionError,不支持的 major.minor 版本 52.0
【发布时间】:2014-06-30 16:50:02
【问题描述】:

首先,我想指出,我知道这个问题已经被问了无数次,我知道通常的解决方案。但是,它似乎对我不起作用。

当出现错误Exception in thread "main" java.lang.UnsupportedClassVersionError: org/telegram/mtproto/state/ConnectionInfo : Unsupported major.minor version 52.0时,一般是用不兼容的JDK-JRE组合编译造成的。但是,如下图所示,我的设置似乎是有序的:

图。 1. JDK 合规性

图。 2. JRE设置

图。 3. Java 主页

似乎有什么问题?我错过了什么?我正在使用 Eclipse Luna,试图运行一些 Telegram API 第 11 层代码(我认为该代码有效,因为它被使用过其他人)。

【问题讨论】:

  • 您是从命令行还是从 Eclipse 中运行代码?如果它来自 Eclipse,那么您的运行配置是什么样的?如果它来自命令行,请检查您的 PATH 环境变量。
  • 嗨,@JonSkeet。感谢您对我的问题感兴趣。我从 Eclipse 运行。我不知道我的运行配置是什么样的。我怎么去那里?
  • @brain56 如果您尝试切换到 Java 7 并返回,会发生什么情况?或者你已经试过了吗?
  • @user3580294,我已经尝试过了,这就是问题的根源,因为错误明确指出它需要 52.0 版本——那就是 Java 8。
  • Right click on app -> Run As -> Run configurations -> JRE Tab。将 JRE 设置为系统中当前可用的 JRE。

标签: java eclipse telegram


【解决方案1】:

据我所知,JAVA_HOME 环境变量与 Eclipse 将如何运行代码无关。同样,您为项目显示的编译器设置不会影响代码的运行方式。

相反,您需要查看运行时使用的运行配置,并检查那里的环境。确保您使用的是 Java 8,一切都应该很好。单击“运行”按钮旁边的三角形,然后选择“运行配置...”以打开包含所有设置的对话框。然后查看 JRE 选项卡,确保您使用的是正确的 JRE。

【讨论】:

  • 这需要一段时间。哈哈。谢谢,@JonSkeet :)
  • 非常感谢伙计! @乔恩斯基特
  • 你不厉害吗?谢谢!
【解决方案2】:

我看到您有 JDK 1.8 的 32 位 JDK 版本和 JDK 1.7 的 64 位版本 我在 64 位机器上运行项目尝试使用 JDK 1.8 的 64 位版本 注意:你也必须有 64 位的 eclipse 版本

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-17
    • 2018-08-24
    • 1970-01-01
    • 1970-01-01
    • 2016-01-10
    • 2017-01-23
    • 2017-06-13
    相关资源
    最近更新 更多