升级到 Java 7(Oracle/Sun JDK,而不是 OpenJDK)后,如果我尝试在 Web Start with 下测试我的应用程序javaws
,它会告诉我“应用程序被安全设置阻止”。我可以使用 Java 控制面板将安全性从高降低到中等以使其正常工作(它会询问我是否要启动未签名的应用程序),但这也会降低我的 Web 浏览器的安全级别。是否有任何系统属性可以让我让javaws -J-Dkey=value
javaws 的一个实例放松或忽略关于将要启动的内容的安全性(但否则保持安全性相同)?
编辑:如果有人能指出 Java 7 源代码的javaws
位置,我很乐意通读代码以找到答案。
编辑 2:当我通过 Java 控制面板将 Java 安全设置为中等时,启动我的应用程序并javaws
询问我是否要运行未签名的应用程序;这就是我想要复制的。控制面板通过将系统属性添加deployment.security.level=MEDIUM
到文件将安全性设置为中等~/.java/deployment/deployment.properties
。我尝试了两种使用方法:
1) 传递-J-Ddeployment.security.level=MEDIUM
给javaws
. 这会导致我的应用程序完全启动,而不会询问我是否要运行未签名的应用程序。
2) Pass -J-Ddeployment.system.config=~/.java/deployment/FOO.properties
,其中FOO.properties
是普通deployment.properties
文件的副本,deployment.security.level=MEDIUM
手动添加。同样,这会导致我的应用程序完全启动,而不会询问我是否要运行未签名的应用程序。
编辑 3:请注意,我使用的是 Oracle/Sun JDK,而不是 OpenJDK。