我偶然發現了關於System.getProperty("os.name")
的一些令人費解的事情。根據a Java bug on the matter和the Java 5 release notes(搜索「os.name」),Java早期版本的「longhorn」版本中存在一個bug,應該在v5發行版本10中修復。爲什麼在Vista上的Java報告它在XP上?
但是,在我的Vista SP1盒子上 - 使用v5 release 15和v6 release 6 - System.getProperty("os.name")
返回「Windows XP」。更多System.getProperty("os.version")
返回「5.1」。儘管通過Google我找不到有關此問題的任何信息。這讓我懷疑這是否與我的Vista設置有些奇怪。我曾嘗試從測試C程序調用GetVersionEx()API函數,並返回主要版本6,次要0(正如我對Vista安裝期望的那樣)。
有沒有其他人遇到過這個問題,知道一個修復或者有什麼建議我可以在不使用JNI的情況下解決它?
這幫助我理清了爲什麼我們的產品返回了錯誤的值。 java錯誤,在6u14中修復...太糟糕了,我們仍然在運輸6u13 = D – GreenKiwi 2010-08-19 01:07:08