繁体   English   中英

如何查找计算机上安装的JVM是Windows OS上的HotSpot还是JRockit

[英]How to find if the JVM installed on the machine is HotSpot or JRockit on Windows OS

如何查找Windows机器上安装的JVM是HotSpot还是JRockit,还是其他任何供应商?

您可以从命令提示符处使用命令java -version ,该命令将输出JVM信息。

在终端中运行此命令

java -XshowSettings:properties -version

对于人类,请查看定义的各种系统属性。 您最可能想要java.vendor。

http://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html

对于程序,最好使用反射来测试所需的JVM特定功能,而不是依赖于任意属性值。

如果您想知道当前正在运行的 JVM是HotSpot还是JRockit,请检查System.getProperty("java.vm.name") 对我来说,它提供了Java HotSpot(TM) 64-Bit Server VMOracle JRockit(R)上的Oracle JRockit(R) ,尽管不同的版本/平台可能会产生稍微不同的结果,所以最可靠的方法可能是:

String jvmName = System.getProperty("java.vm.name");
boolean isHotSpot = jvmName.toUpperCase().indexOf("HOTSPOT") != -1;
boolean isJRockit = jvmName.toUpperCase().indexOf("JROCKIT") != -1;

Thorbjørn建议使用java.vendor的问题是同一供应商可能会产生多个JVM。 实际上,由于甲骨文收购了BEA和Sun,因此HotSpot和JRockit现在都具有相同的价值: Oracle Corporation

如果要查找系统上安装的所有JVM:使用命令java -version ,Nambari的问题是,JVM可以安装在机器上,但路径中不存在。 对于Windows, 扫描注册表可能是更好的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM