Java错误: “Your security settings have blocked a local application from running”怎么解决?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (21)

我试图在浏览器上运行这个用Java编写的简单HelloWorld代码

public class HelloWorld extends JApplet {
public void init() {
    try {
        SwingUtilities.invokeAndWait(new Runnable() {
            public void run() {
                JLabel lbl = new JLabel("Hello World");
                add(lbl);
            }
        });
    }
    catch (Exception e) {
        System.err.println("createGUI didn't complete successfully");
    }
}

我用NetBeans,然后我创建了一个WebApplication项目。HTML运行applet的代码是:

<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>
    <body>
        <p><applet code="HelloWorld" archive="applet_HelloWorld.jar"  width="590" height="530"></applet></p>
    </body>
</html>

如果从NetBeans运行applet,它就能工作。但是,当我双击HTML代码时,浏览器中会弹出以下消息:

Your security settings have blocked a local application from running

我尝试过IE和Firefox,但什么也没有发生。

这条错误在Java更新之后开始出现。问题在哪里?

提问于
用户回答回答于

我今天所面临的同样的问题,我通过改变Java控制面板上的安全设置来解决该问题(从HIGH改成MEDIUM)。

那么,将Java安全设置永久设置为MEDIUM并不是完美的方法,因为这会让潜在的恶意软件在系统上运行而不被阻止。所以我建议在运行applet之后,将设置更改为HIGH。

用户回答回答于

新的安全设置的问题,你需要进行一些修改

  • 极高大多数安全设置-只有Java应用程序由来自受信任的权威机构的未过期证书标识的Java应用程序将被允许运行。
  • 高(最低推荐)由受信任的权威机构的证书标识的Java应用程序将被允许运行。
  • 介质-所有Java应用程序都可以在显示安全提示后运行。

扫码关注云+社区