图片:

显示版本的命令提示符

错误图片

Hello.java

import java.applet.Applet;
import java.awt.*;

public class Hello extends Applet {

    // Java applet to draw "Hello World"
    public void paint (Graphics page) {
        page.drawString ("Hello World!", 50, 50);
    }
}

Hello.html

<HTML>
    <HEAD>
        <TITLE>HelloWorld Applet</TITLE>
    </HEAD>

    <BODY>
        <APPLET CODE="Hello.class" WIDTH=300 HEIGHT=150>
        </APPLET>
    </BODY>
</HTML>

错误

Hello : Unsupported major.minor version 52.0

可能是什么问题?


当前回答

我想加上这个。我今天遇到了这个问题。调整了我的项目中的设置,重新构建,同样的问题。我曾经(错误地)假设更改我的项目(Eclipse)中的设置也会导致我的项目所依赖的项目也被重新编译。 调整依赖树中所有项目的设置就解决了这个问题。

其他回答

我想加上这个。我今天遇到了这个问题。调整了我的项目中的设置,重新构建,同样的问题。我曾经(错误地)假设更改我的项目(Eclipse)中的设置也会导致我的项目所依赖的项目也被重新编译。 调整依赖树中所有项目的设置就解决了这个问题。

这个问题是因为Java版本不匹配。参考JVM规范,以下是用于不同Java版本的类文件的主要版本。(到目前为止,所有版本都支持以前的所有版本。)

Java SE version Major version
1.0.2 45
1.1 45 (Not a typo, same version)
1.2 46
1.3 47
1.4 48
5.0 49
6 50
7 51
8 52
9 53
10 54
11 55
12 56
13 57
14 58
15 59
16 60

这些是指定的主要号码。关于不支持的major的错误。次要版本是因为在编译期间使用了更高的JDK,而在运行时使用了更低的JDK。

因此,'major。次要版本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>

您需要在IDE中将编译器遵从级别更改回1.7。

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

当你在更高版本的java(比如jdk 1.8)上编译你的项目,然后在低版本的java(比如jdk 1.7)上运行时,就会发生这种情况。

如果你的项目路径中有JRE-1.7库,

1.右键单击项目

2.转到属性

3.选择项目方面

4.在行中找到Java,如果使用JRE-1.7,则选择version(例如1.7)

5.单击Apply并运行项目。

我也有同样的问题……JDK和插件版本冲突。

我使用1.8编译…最近的一次,这条信息开始出现。 所以我搜索了JRE 7 (http://www.oracle.com/technetwork/java/javase/downloads/server-jre7-downloads-1931105.html)…并安装了它…再次…… 现在1.8和1.7在同一台计算机上。

使用NetBeans、编译和目标版本1.7解决了我的问题。