我们没有使用默认的 Java 安全策略,因为它允许我们想要禁止的事情。所以我们有自己的策略文件,通常不允许从任何地方读取......
但这意味着 rt.jar 本身无法在需要时从文件中读取,这很糟糕。
所以我添加了以下规则:
grant codeBase "file:${java.home}/lib/rt.jar" {
permission java.security.AllPermission;
};
grant codeBase "file:${java.home}/jre/lib/rt.jar" {
permission java.security.AllPermission;
};
我不确定 java.home 是否适用于 JDK 或 JRE,所以我同时设置了两者。但是当我运行测试时,当 rt.jar 尝试从文件中读取时,我仍然会遇到安全异常。
显然我做错了什么,所以我希望其他人能发现我的错字。
我努力了:
/
之后添加file:
jar:
前后添加file:
_!/-
_.jar