java - 通过 JMX 判断 Java 版本

标签 java jmx

我希望通过 JMX 远程确定特定进程运行的 Java 版本。具体来说,我想要类似“1.6.0_26”的内容,这是 System.getProperty("java.version") 将返回的内容。

通过 RunTime MBean,我可以检查 VmName 和 VmVersion 属性,它们分别给出“Java HotSpot(TM) 64-Bit Server VM”和“20.1-b02”。我不确定“20.1-b02”来自哪里;有没有办法将其与“1.6.0_26”版本相匹配?

最佳答案

java.lang.Runtime bean 的一些提示:

  • 规范版本
  • LibraryPath/BootClassPath(最有可能在文件夹名称中)
  • 系统属性 -> java.runtime.version

编辑

正如@Kent 指出的,代码中的java.lang.management.RuntimeMXBean.getSystemProperties()SystemProperties -> java.runtime.version 相同 在像 JConsole 这样的 JMX 客户端中。

关于java - 通过 JMX 判断 Java 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14246375/

相关文章:

java - 在 Eclipse 启动时启动 Tomcat?

java - NiFi定制处理器-读取数据库 View

java - 有没有办法配置 ClientBuilder POST 请求,使其能够接收返回码和 JSON 对象?

java - JMXConnector 无法连接到 ssl keystore

java - 如何检查 JMX 代理是否在 Tomcat 中工作?

java - Android 2.3.3 中无法解析的日期异常在较新版本中不存在

Java NIO : how to protect global data effectively?

java - JMX 垃圾收集和 System.gc() 之间的区别?

tomcat - 远程调用在 tomcat 上运行的 MBean 操作

java - 如何在java程序中获取操作系统属性?