之前看到微软跳过 Windows 9 的原因是,很多开发者用 Windows 9 开头的字符串来判断是不是 Windows 95/98,大家以为是个笑话。
结果……这居然是真的!
在 Sun 的 OpenJDK 1.7 中,真的直接通过字符串开头来判断 Windows 版本……
public WindowsAttachProvider() {
String os = System.getProperty("os.name");
if (os.startsWith("Windows 9") || os.equals("Windows Me")) {
throw new RuntimeException(
"This provider is not supported on this version of Windows");
}
String arch = System.getProperty("os.arch");
if (!arch.equals("x86") && !arch.equals("amd64")) {
throw new RuntimeException(
"This provider is not supported on this processor architecture");
}
}
特别声明:以上代码版权属于 Oracle,我复制仅用于讨论技术,请 Oracle 不要诉讼我 T_T
源码见此处:https://searchcode.com/codesearch/view/17993376/
对此各位怎么看?