如何在Linux上检查Java的位版本?

10

可能是重复问题:
installed jvm is 64 bit or 32 bit

我如何检查 Linux 机器上安装的 Java 版本是 32 位还是 64 位?当我键入:

java -version

我得到:

java version "1.6.0_16"
Java(TM) SE Runtime Environment (build 1.6.0_16-b01)
Java HotSpot(TM) Server VM (build 14.2-b01, mixed mode)

这是32位还是64位?


你需要知道这个干嘛?本地代码? - Thorbjørn Ravn Andersen
2
如果我没记错的话,64位JVM在其版本输出中总是明确提到这一事实。 - Rob
4个回答

22

运行java时,可以指定-d64-d32参数,如果不支持64位或32位,则会显示错误信息。您的JVM可能同时支持两种。


1
为什么不在你的代码中检查System.getProperty("os.arch")的值呢?

0

请访问JVM在线测试并运行它。

然后检查显示的架构:x86_64表示您安装了64位版本,否则为32位。


0

适用于所有二进制文件,不仅限于Java:

file - < $(which java) # heavyly bashic

cat `which java` | file - # universal

这并不能告诉你所涉及的JVM是否实际支持加载64位字节码。 - sjr
1
没有32位或64位的字节码,它们是相同的。在两种架构上,floatint都是32位,而doublelong都是64位。 - shellholic

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接