我正在尝试用OracleJavaMission控件评测JavaSpring应用程序。我将JVM连接配置为:localhost:7091
然后我用CCD_ 2启动了应用程序。
当我试图启动飞行记录仪时,我收到一条错误信息。
Failed to retrieve RMIServer stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused: connect]
Could not connect to a JVM at service:jmx:rmi:///jndi/rmi://localhost:7091/jmxrmi. Make sure one is running and that you are using the correct protocol in the Service URL.
有人知道这个错误的原因是什么吗?
您可以尝试使用自动发现。然后连接将自动显示在JMC 中
-Dcom.sun.management.jmxremote.autodiscovery=真正的
您还可以命名连接,以便轻松识别它。
-Dcom.sun.management.jdp.name=应用
并禁用安全
-Dcom.sun.management.jmxremote.authenticate=错误
-Dcom.sun.management.jmxremote.ssl=错误
我遇到了这个问题。我在Windows Server 2016上安装了JDK 10。使用JMC和JVM,我希望在同一台服务器上进行监视。
上线时,我们将IP从临时IP切换为实时IP。然而,JMC将localhost
解析为原始IP。此外,在指定服务器的当前IP时,JMC将其解析为原始IP。
将-Djava.rmi.server.hostname=localhost
添加到我想要监视的Java进程中,解决了这个问题。
然而,我仍然有兴趣知道为什么JMC(或RMI)仍然解析错误。