【发布时间】:2016-03-03 23:10:30
【问题描述】:
我正在使用 java web start 部署 Javafx 8 应用程序。当我尝试从依赖项 jar fontawesomefx-8.9.jar 访问任何类时出现此错误 如果我在代码中不使用任何 fontawesomefx-8.9 类,则应用程序可以正常工作。这种行为的可能原因是什么?
java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "accessClassInPackage.com.sun.javafx.css.parser")
【问题讨论】:
-
我的应用程序 jar 和依赖项都已签名。但仍然看到错误。我们是否必须将任何密钥库文件复制到网络服务器?
-
不,您不需要将密钥库文件放在服务器上。通常,在代码签名时,keystore 包含您的私钥,您在打包代码时只使用一次来对代码进行签名。签名验证的证书通常是embedded in the JNLP data for your application。
-
将以下行添加到 jnlp 使其工作。不确定这是否是理想的方式。
-
可能没问题。通常 JNLP 文件是由 maven 或 ant 任务生成的,而不是手动编辑的,因此您通常不需要手动编辑 jnlp 来添加该信息。您可能不需要所有权限,但您确实需要一些额外的权限,所以实际上如果您要求所有权限而不仅仅是一些额外的权限,大多数用户不会在意。如果您将有关如何解决此问题的信息发布为self-answer,这可能是最好的。
标签: java-8 javafx-8 font-awesome java-web-start