0

我正在处理一个行为不良的库(JRuby),它试图读取整个宇宙,然后也无法处理SecurityException,因此根本无法启动。

Caused by: org.jruby.exceptions.RaiseException: (LoadError) library `java' could not be loaded: java.security.AccessControlException: access denied ("java.io.FilePermission" "/Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home/lib/ant-javafx.jar" "read")

不过,我不介意 JRuby(或任何其他库)阅读整个宇宙,所以我试图弄清楚如何将其添加到赠款中。这个 jar 文件原来在 java.class.path 上,但我无法弄清楚授予权限的规则。

以我过去看到的其他策略文件为例,我一直在尝试这样的事情:

grant {
    permission java.io.FilePermission "${{java.class.path}}", "read, execute";
    permission java.io.FilePermission "${{java.class.path}}/-", "read, execute";
};

但它没有任何区别,所以我怀疑这种${{...}}语法只适用于代码库。

有没有办法为文件权限做这件事?

4

0 回答 0