Java 与MongoDB的JMX注册错误

Java 与MongoDB的JMX注册错误,java,mongodb,permissions,jmx,accesscontrolexception,Java,Mongodb,Permissions,Jmx,Accesscontrolexception,我已经在我的服务器上安装了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

我已经在我的服务器上安装了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的配置文件。

我认为您的安全策略不允许MongoDB注册其JMX方法。见这个问题:

建议编辑您的
security.policy
文件以添加行:

grant { permission javax.management.MBeanTrustPermission "register"; };
然后将以下内容添加到VM命令行参数中:

-Djava.security.policy= <path to security.policy>
-Djava.security.policy=

能否发布配置文件以及mongod调用和参数?