3

我有一个简单的测试小程序,它应该绘制一个小三角形(并且可以appletviewer Triangle.class从命令行正常使用),但是当我尝试Triangle.htm在浏览器中查看时,我收到了这条消息(据我所知,来自 Java 本身,不是我的 Firefox 或 Chrome):

“您的安全设置已阻止本地应用程序运行。”

但是,我无法弄清楚要更改哪些设置。我尝试将常规设置设置为最低(称为“中等”哈哈,这就像咖啡店中的杯子尺寸 - 哦。对。)但这没有用,如果解决方案被埋在某个地方更高级的选项,这对我来说非常痛苦......:/

这个问题听起来像我的问题:

Java 错误:“您的安全设置已阻止本地应用程序运行”

但原贴说,“已解决:问题是编译器使用JDK6而不是JDK7。”

在重新编译类文件之前,我检查了我是否拥有最新版本:

> java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b17)
Java HotSpot(TM) Client VM (build 23.25-b01, mixed mode, sharing)

> javac Triangle.java

无论如何,谁能看看他们是否遇到同样的问题并告诉我你是如何解决的?

为了便于复制,这是类文件的来源:

Triangle.java

import java.awt.*;
import java.applet.Applet;
public class Triangle extends Applet {
    public void paint (Graphics g){
        int bottomX=80;
        int bottomY=200;
        int base=100;
        int height=100;
        g.drawLine(bottomX,bottomY,bottomX+base,bottomY);
        g.drawLine(bottomX+base,bottomY,bottomX+base/2,bottomY-height);
        g.drawLine(bottomX+base/2,bottomY-height, bottomX,bottomY);
    }
}

这是包含类文件的文件夹中的 htm:

Triangle.htm

<applet code="Triangle.class" width=400 height=400></applet>
4

2 回答 2

4

我刚刚使用 Java 版本 1.7.0_25-b17 尝试了您的代码。它在这里看到的两个较低设置的浏览器中运行良好。

Java 控制面板 - 安全选项卡

要使其在最高安全级别下工作,需要将其放入 Jar 中并使用有效证书进行签名。

于 2013-07-12T13:39:30.853 回答
0

官方声明(甲骨文对我学校团队电子邮件的回复)即使您将安全设置设置为绝对最小值(我的小程序有很多次),一些旧的虚拟机残留物实际上可能会导致小程序的安全警报。我想这是一个学校/学习工作(因为它是一个小程序),所以可能值得尝试通过 appletviewer 直接运行它。

于 2013-07-12T12:26:22.993 回答