0

数週間前に Java の学習を開始し、現在はジャプレット ゲームを作成中です。

Mac os x を使用していますが、ブラウザでアプレットを実行しようとすると、次の例外が発生します。

java.lang.SecurityException: Permission denied:

JApplet が実行されるようにするには、どうすればこれを修正できますか? ファイルはすべてローカルにあり、ブラウザーで JApplet をローカルで実行しています。

以下はhtmlコードです

<html>
<head>
    <title>Java Game!</title>
</head>
<body>

    <applet code="/local/path/to/MainApplet.class"
            width=500
            height=500>
    </applet>

</body>
</html>

アップデート:

以下は、完全なコンソール出力です。

Java.lang.SecurityException: Permission denied:
 file:/path/to/MainApplet.class
    at sun.plugin2.applet.Applet2ClassLoader$1.run(Applet2ClassLoader.java:209)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.plugin2.applet.Applet2ClassLoader.findClass(Applet2ClassLoader.java:201)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Plugin2ClassLoader.java:249)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Plugin2ClassLoader.java:179)
    at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Plugin2ClassLoader.java:160)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Plugin2ClassLoader.java:678)
    at sun.plugin2.applet.Plugin2Manager.createApplet(Plugin2Manager.java:3045)
    at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Plugin2Manager.java:1497)
    at java.lang.Thread.run(Thread.java:680)
Exception: java.lang.SecurityException: Permission denied: file:/path/to/MainApplet.class

更新 #2

Windows で同じコードを試してみましたが、まったく問題はありませんでした。この例外を与えているのは Mac だけです。何かアイデアはありますか?

4

1 に答える 1

0

アプレットはインターネットから提供されるコンポーネントであるため、Java のセキュリティ フレームワークは、アプレットがハードディスクからの書き込みや読み取りなどのローカル リソースにアクセスする場合、アプレットに署名する必要があることを要求します。

アプレットに署名するには、次のリンクを確認できます: http://java.sun.com/developer/onlineTraining/Programming/JDCBook/signed.html

于 2012-01-24T18:06:23.190 に答える