我希望能够动态确定 Java 应用程序中的操作系统、体系结构和位数。
例如,我希望我的应用程序知道它何时位于 Solaris 32 位 sparc 计算机上或何时位于 x86 计算机上。
我知道系统 get 属性返回 JVM 的架构,但是有什么可以真正找出真正的操作系统架构和位数吗?
最佳答案
获取字节顺序的最简单方法是使用 ByteOrder.nativeOrder();
操作系统位于系统属性中。
为了确定 JVM 是否为 64 位,我使用了来自 ehcache 的以下内容。
private static final boolean IS64BIT = is64Bit0();
public static boolean is64Bit() {
return IS64BIT;
}
private static boolean is64Bit0() {
String systemProp;
systemProp = System.getProperty("com.ibm.vm.bitmode");
if (systemProp != null) {
return systemProp.equals("64");
}
systemProp = System.getProperty("sun.arch.data.model");
if (systemProp != null) {
return systemProp.equals("64");
}
systemProp = System.getProperty("java.vm.version");
return systemProp != null && systemProp.contains("_64");
}
关于java - 确定java中的操作系统架构和位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16549322/