图片:

显示版本的命令提示符

错误图片

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

可能是什么问题?


当前回答

如果您正在使用NetBeans IDE,右键单击项目并选择属性并转到源代码,您可以将源代码/二进制格式更改为较低的JDK版本。

其他回答

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

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

1.右键单击项目

2.转到属性

3.选择项目方面

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

5.单击Apply并运行项目。

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

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

我在安装一个新的Java 1.8时遇到了这种情况,但保留了旧的命令行解释器。

它有一个旧的路径,并继续使用Java 1.7执行应用程序,而项目已经使用Java 1.8构建。

要解决这个问题,你所需要做的就是……确保你的Java版本在编译和运行时都是一样的。无论您使用什么工具或ide。

如果您使用的是Linux,并且安装了不同版本的Java,请使用以下命令:

sudo update-alternatives --config java

这将提供在系统上安装的Java版本之间切换的快速方法。通过选择Java 8,我将解决您的问题。