我已经在我的服务器上安装了MongoDB,并编写了一个非常小的Java程序来连接它:
Mongo mongo = new Mongo("localhost");
db = mongo.getDB("testdb"); // testdb doesn't exist, will be created
当我运行程序时,我收到此错误:
WARNING: jmx registration error: java.security.AccessControlException:
access denied (javax.management.MBeanTrustPermission register) continuing...
可能导致此错误的原因是什么?我正在使用MongoDB提供的MongoDB数据库驱动程序2.7.3。自安装以来,我已经更改了MongoDB的配置文件。
答案 0 :(得分:2)
在我看来,您的安全策略不允许MongoDB注册其JMX方法。请参阅此问题:AccessControlException when trying to redeploy webapp to Tomcat using Netbeans
建议您修改security.policy
文件以添加以下行:
grant { permission javax.management.MBeanTrustPermission "register"; };
然后将以下内容添加到VM命令行参数:
-Djava.security.policy= <path to security.policy>