我有一个使用JNA库的程序(使用maven管理).程序本身具有所有权限(我收到了FilePermission错误,更改了策略文件,现在我可以随意读/写).但是,当我使用JNA时,我收到以下错误:
Exception in thread "main" java.security.AccessControlException: access denied (java.util.PropertyPermission jna.encoding read)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:393)
at java.security.AccessController.checkPermission(AccessController.java:553)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at java.lang.SecurityManager.checkPropertyAccess(SecurityManager.java:1302)
at java.lang.System.getProperty(System.java:669)
at com.sun.jna.Pointer.getString(Pointer.java:682)
at com.sun.jna.Function.invokeString(Function.java:598)
at com.sun.jna.Function.invoke(Function.java:356)
at com.sun.jna.Function.invoke(Function.java:276)
at com.sun.jna.Library$Handler.invoke(Library.java:216)
我的策略文件是(最后一次授予obvioulsy不起作用):
grant codeBase "file:/home/tm/workspace/-" {
permission java.security.AllPermission;
};
grant codeBase "file:/home/tm/.m2/repository/net/java/dev/jna/jna/-" {
permission java.util.PropertyPermission "jna.encoding", "read";
};
我正在eclipse中运行程序,来自工作区目录中的项目.我需要分配哪些权限的想法?