'class not found' 消息通常可以通过添加 .. 来减少。
<param name='codebase_lookup' value='false'>
..到applet
元素。至少如果这些课程是 Jar'd 的话。
有关详细信息,请参阅特殊小程序属性。
注意:这是HTMLparam
中的小程序,而不是JNLP 文件中的小程序。param
让您的朋友报告java.version 和 java.vendor 属性。
Applet 只能由 Sun 的 1.6.0_10+ 中的 JNLP 配置。即使这样,浏览器也需要专门配置为在 Linux 上使用“下一代”插件。最好(至少在测试时)将一个完全不同的小程序放在 HTML 中的小程序元素中(与 JNLP 中指定的小程序相同),以帮助判断是否获得了“下一代”。/plugin2' 的行为。
编辑2:
测试:当信任对话被拒绝时:
exception: exit(-1).
ExitException[ 4]java.lang.RuntimeException: exit(-1)
at com.sun.javaws.Main.systemExit(Unknown Source)
at com.sun.javaws.security.AppPolicy.grantUnrestrictedAccess(Unknown Source)
at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(Unknown Source)
at com.sun.javaws.LaunchDownload.checkSignedResources(Unknown Source)
at sun.plugin2.applet.JNLP2Manager.prepareLaunchFile(Unknown Source)
at sun.plugin2.applet.JNLP2Manager.loadJarFiles(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception: ExitException[ 4]java.lang.RuntimeException: exit(-1)
从哪里来ExitException
?我在跟踪中没有看到任何提及非 Sun 代码,但我不熟悉确切的RuntimeException
.
确保框架不会尝试调用JFrame.EXIT_ON_CLOSE
. 即使是受信任的小程序也不允许结束当前的 VM 实例。我想出了一次如何“绕过”它并尝试过 - 看到整个浏览器崩溃。;)
测试:当信任对话框正常时:
小程序运行并产生一个按钮来弹出自由浮动的“混合器”。按钮可以发出声音,但无法从那里发出声音。
为什么这个小程序需要信任?
放弃小程序并让 JNLP 直接启动可能会更好JFrame
。
由于您似乎希望最终用户拥有 1.6.0(_10+),因此调用after也是值得setMinimumSize()
的。JFrame
pack()