不受支持的major.minor版本52.0

这个问题在这里已经有了答案:

  • 如何修复java.lang.UnsupportedClassVersionError:不受支持的major.minor版本42个答案

  • 这个问题是因为Java版本不匹配。 参考Wikipedia Java类参考:

  • Java SE 10 = 54
  • Java SE 9 = 53
  • Java SE 8 = 52
  • Java SE 7 = 51
  • Java SE 6.0 = 50
  • Java SE 5.0 = 49
  • JDK 1.4 = 48
  • JDK 1.3 = 47
  • JDK 1.2 = 46
  • JDK 1.1 = 45
  • 这些是分配的主要数字。 有关不支持的major.minor版本的错误是因为在编译期间,您在运行时使用更高的JDK和更低的JDK

    因此,'major.minor version 52.0'错误可能是因为该jar是在JDK 1.8中编译的,但是您正尝试使用JDK 1.7环境运行它。 报告的号码是所需的号码,而不是您使用的号码。 为了解决这个问题,最好让JDK和JRE指向相同的版本。

    在IntelliJ IDEA中,

  • 转到Maven设置→Maven→导入。 将导入器的JDK设置为1.8。
  • 转到Maven设置→Maven→Runner。 将JRE设置为1.8。
  • 转到菜单文件*→项目结构→SDK。 确保JDK主路径设置为1.8。
  • 重新启动IntelliJ IDEA。

    另一种可能有用的方法是通过指示IntelliJ IDEA启动哪个JDK版本。

    转到: / Applications / IntelliJ IDEA 15 CE.app/Contents/Info.plist ,并将JVM版本替换为:

    <key>JVMVersion</key>
    <string>1.8*</string>
    

    解决这个问题的聪明方法是编译时使用最新的SDK并使用交叉编译选项。 要完全正确使用这些选项,需要目标版本的JRE( 不是JDK )的rt.jar

    鉴于该小程序的性质,它看起来可以编译为用于Java 1.1。


    您需要在IDE中将编译器合规性级别更改回1.7。

    这可以在IDE的首选项设置中完成。 例如,在Eclipse中进入菜单Windows→首选项,选择Java并展开它。 然后选择编译器并将合规性级别更改为1.7。 我相信这会从那里起作用。

    链接地址: http://www.djcxy.com/p/35097.html

    上一篇: Unsupported major.minor version 52.0

    下一篇: peer 2 peer UDP sockets?