繁体   English   中英

查找JDK是openJDK还是Oracle JDK

[英]Find whether the JDK is openJDK or Oracle JDK

我正在构建一个应用程序,用户可以在其中更改Java设置并指向任何jdk。 但它必须是Oracle JDK,不应该是openJDK。 有没有办法检查JDK是否是打开JDK或Oracle JDK给定其java路径c:\\bin\\jdk\\binjava.exe

最简单的方法是System.exec()

c:\bin\jdk\bin\java.exe -version

并解析它的输出。 OpenJDK和Sun JDK具有不同的文本输出。

这不是最佳选择,但请考虑:即使您发现类名,功能或类似名称存在差异,它仍然只适用于某些版本。 你永远不能依赖于不同的差异。

java -version

Command将在其输出文本中提供Java版本详细信息和运行时环境名称。 使用运行时环境名称,您可以找到它。

例如,如果是OpenJDK

openjdk version "<version>"
OpenJDK Runtime Environment .....
OpenJDK XX-Bit Server VM .....

对于其他JDK,您将在输出中看到JDK类型。

Sample:
    java version "<version>"
    Java(TM) SE Runtime Environment .....
    Java HotSpot(TM) XX-Bit Server VM .....

暂无
暂无

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

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