检查 Java 是 64 位还是 32 位
-
使用
System
类检查 Java 是 64 还是 32 位 -
使用
os.arch
令牌检查 Java 是 64 还是 32 位 -
使用
java -version
命令检查 Java 是 64 还是 32 位 -
使用 Linux
file
命令检查 Java 是 64 还是 32 位 -
使用
jna
库检查 Java 是 64 还是 32 位 -
使用
Native
类检查 Java 是 64 还是 32 位
本教程介绍了在 Java 中检查 Java 是 64 版本还是 32 版本的步骤。
要检查安装的 Java 版本是基于 64 位还是 32 位,我们可以使用多种方法,例如 System.getProperty()
方法、Java 版本命令和 sun.Platform
类。
在本文中,我们将在示例中使用这些方法来检查 Java 平台。
使用 System
类检查 Java 是 64 还是 32 位
在这个例子中,我们使用了 System
类的 getProperty()
方法,该方法将字符串标记作为参数并返回一个指示 Java 版本架构的字符串。
在这里,我们使用了代表 Java 内部模型的 sun.arch.data.model
字符串。请参阅下面的示例。
import java.io.IOException;
public class SimpleTesting{
public static void main(String[] args) throws IOException{
String is64 = System.getProperty("sun.arch.data.model");
System.out.println("Your system supports "+is64+" bit");
}
}
输出:
Your system supports 64 bit
使用 os.arch
令牌检查 Java 是 64 还是 32 位
在这里,我们使用 os.arch
标记作为 System
类的 getProperty()
方法中的参数。它返回 Java 的架构类型。请参阅下面的示例。
import java.io.IOException;
public class SimpleTesting{
public static void main(String[] args) throws IOException{
String is64 = System.getProperty("os.arch");
System.out.println("Your system supports "+is64+" bit");
}
}
输出:
Your system supports amd64 bit
使用 java -version
命令检查 Java 是 64 还是 32 位
这是检查已安装 Java 体系结构的最简单方法之一。如果你不想编写任何代码,只需打开终端/命令提示符并使用此命令即可。运行此命令后,它将打印出所有详细信息以及 Java 架构。
$ java -version
输出:
OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)
使用 Linux file
命令检查 Java 是 64 还是 32 位
如果你使用的是 Linux,那么你可以使用 file
命令以及已安装 Java 的路径位置,你将获得如下输出所示的输出。
$ file {YOUR_JRE_LOCATION_HERE}/bin/java
输出:
ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2
使用 jna
库检查 Java 是 64 还是 32 位
这是另一种需要具有架构信息的内部 sun 包的解决方案。在这里,我们使用了包含 is64Bit()
方法的 sun 包的 Platform
类,如果 Java 是 64 类型,则返回 true,否则返回 false。请参阅下面的示例。
jna
是一个本地 API 库,用于连接低级代码。
import java.io.IOException;
import com.sun.jna.Platform;
public class SimpleTesting{
public static void main(String[] args) throws IOException{
boolean is64 = Platform.is64Bit();
System.out.println("Your system supports is64 bit: "+is64);
}
}
输出:
Your system supports is64 bit: true
使用 Native
类检查 Java 是 64 还是 32 位
jna
包的 Native
类提供了一个常量 POINTER_SIZE
,它返回 Java arch 使用的字节数。如果返回 8,则表示它是 64 位系统,否则返回 32。请参见下面的示例。
import java.io.IOException;
import com.sun.jna.Native;
public class SimpleTesting{
public static void main(String[] args) throws IOException{
boolean is64 = Native.POINTER_SIZE == 8;
System.out.println("Your system supports is64 bit: "+is64);
}
}
输出:
Your system supports is64 bit: true