[英]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.