我想设置两台运行 jstatd 的服务器,这样我就可以实时监控我的应用程序。Web 服务器已经启动并运行,但另一台服务器总是会出现这样的异常。
无法将 /JStatRemoteHost 绑定到 RMI 注册表 java.rmi.ServerException:RemoteException 在服务器线程中发生;嵌套异常是:java.rmi.UnmarshalException:错误解组参数;嵌套异常是: java.lang.ClassNotFoundException: sun.jvmstat.monitor.remote.RemoteHost (no security manager: RMI class loader disabled) at sun.rmi.server.UnicastServerRef.oldDispatch(UnicastServerRef.java:419) at sun.rmi .server.UnicastServerRef.dispatch(UnicastServerRef.java:267) 在 sun.rmi.transport.Transport$1.run(Transport.java:177) 在 sun.rmi.transport.Transport$1.run(Transport.java:174) 在java.security.AccessController.doPrivileged(Native Method) 在 sun.rmi.transport.Transport.serviceCall(Transport.java:173) 在 sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java: java:143) 引起:java.rmi.UnmarshalException:解组参数错误;嵌套异常是:java.lang.ClassNotFoundException: sun.rmi.server 的 sun.rmi.registry.RegistryImpl_Skel.dispatch(Unknown Source) 处的 sun.jvmstat.monitor.remote.RemoteHost(无安全管理器:禁用 RMI 类加载器)。 Sun.rmi.transport.Transport$1.run(Transport.java:177) 上 sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:267) 上的 UnicastServerRef.oldDispatch(UnicastServerRef.java:409) sun.rmi。 transport.Transport$1.run(Transport.java:174) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.Transport.serviceCall(Transport.java:173) at sun.rmi.transport.tcp .TCPTransport.handleMessages(TCPTransport.java:553) 在 sun.rmi.transport.tcp.TCPTransport$ConnectionHandler。
我确定 jstatd 加载了内容是的策略文件
授予代码库 "file:${java.home}/../lib/tools.jar" { 权限 java.security.AllPermission; };
我无法弄清楚问题出在哪里,请帮忙。