如何确定在JVM实例上设置的-server选项

Sim*_*mon 6 java jvm jvm-arguments

我正在尝试确定我的JVM实例上是否默认启用了JVM(使用jdk 1.7u3)-server选项.根据我的环境(Windows 2008 Server R2)和服务器级机器检测信息,我希望它可以设置,但我想明确知道.当然我可以使用该选项显式启动JVM,但我很可能会有一种简单的方法来确定它.

我已经尝试了以下方法,但似乎都没有明确说明我在寻找什么.也许它在其他一些细节中编码.

  1. 通过jVisualVM查看JVM并查看未明确列出的JVM参数
  2. 以编程方式尝试查看JVM参数,匹配通过jVisualVM观察到的参数

    RuntimeMXBean RuntimemxBean = ManagementFactory.getRuntimeMXBean();
    List<String> arguments = RuntimemxBean.getInputArguments();     
    
    Run Code Online (Sandbox Code Playgroud)
  3. 使用JVM选项-XX:+ PrintCommandLineFlags,这提供了详细的详细信息,但仍然没有证据表明-server选项已设置.

Ann*_*nna 2

打开 JConsole -> 检查 java.lang.Runtime -> VmName 属性。它为我显示 Java HotSpot(TM) 客户端 VM。如果您正在运行服务器模式 - 检查它为您显示的值。

如果您需要使用程序检查这一点 - 您将需要查询管理工厂以获取上述属性。