1
我想在我的應用程序中支持Java 1.5+,但如果用戶在Java 1.6+ JVM上運行,則使用Java 1.6 + -specific API調用。所以我需要一種方法來檢查當前版本的JVM,並確保只使用可用的API。當然,我將用-target 1.5
進行編譯。如何檢查當前版本的Java是否高於1.6
我想出:
if (System.getProperty("java.vm.version").startsWith("1.5")) {
// Do 1.5 things
} else {
// Do 1.6+ things
}
這似乎符合這個要求,但我不知道是否有一個「更好」的方式?此外,如果我小心不要從我的1.5代碼中調用任何1.6 API調用,那麼在1.5 JVM上運行時是否仍有可能獲得NoSuchMethodError
s,NoClassDefFound
?
可能的複製爲:http://stackoverflow.com/questions/2591083/getting-version-of-java-in -運行 – Thomas 2012-02-23 19:45:05