我遇到了一些麻烦——实际上很多——试图弄清楚如何让 NetBeans 读取我的特定应用程序的策略文件。请看下面的代码:
public static void main(final String[] args)
{
System.setSecurityManager(new SecurityManager());
System.setProperty("java.security.policy","file:/C:/Users/kBPersonal/Documents/NetBeansProjects/JAASTest/JAASTest.policy");
EventQueue.invokeLater(new Runnable()
{
public void run()
{
JFrame frame = new JAASFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
});
}
无论我做什么,我都会不断收到以下错误,这让我知道 NetBeans 没有读取我的 security.policy 文件(我什至将它的位置添加到了 中的主 security.policy 文件中C:\Program Files (x86)\Java\jre6\lib\security\java.security
)。顺便说一句,第 20 行是我尝试设置System.setProperty("java.security.policy, ...)
Exception in thread "main" java.security.AccessControlException: access denied (java.util.PropertyPermission java.security.policy write)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
at java.security.AccessController.checkPermission(AccessController.java:546)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at java.lang.System.setProperty(System.java:725)
at JAASTest.main(JAASTest.java:20)
非常感谢任何和所有帮助!