确定 JRE 架构 32 位与 64 位 [重复]

Posted

技术标签:

【中文标题】确定 JRE 架构 32 位与 64 位 [重复]【英文标题】:Determine JRE architecture 32-bit vs 64-bit [duplicate] 【发布时间】:2012-08-19 18:33:18 【问题描述】:

我想弄清楚我的 JRE 是用于 32 位还是 64 位。

是的,我已经尝试过java -version / -showversion / -fullversion,但它并没有说任何有用的东西(至少对我来说不是)。

这是我做java -version时得到的:

java version "1.6.0_11"
Java(TM) SE Runtime Environment (build 1.6.0_11-b03)
Java HotSpot(TM) Client VM (build 11.0-b16, mixed mode)

所以我只能访问一个压缩的 JRE 的 bin 文件夹,安装和设置了一个不同的 JRE,这不是我要检查的版本。

有什么想法吗?

【问题讨论】:

如果是 64 位,它会说 64 位,所以它是 32 位。 在 32/64 位 jres 上都试过了。 32 位的有Java HotSpot(TM) Client VM,64 位的有Java HotSpot(TM) 64-Bit Server VM 你可以在这个帖子***.com/questions/2062020/…找到你的答案 【参考方案1】:
System.getProperty("sun.arch.data.model");

【讨论】:

我能够检查 sun.arch.data.model 并且它对我有用!谢谢安德鲁! 谢谢安德鲁。我正在寻找那个命令。【参考方案2】:

如果您尝试从命令行执行此操作,file 是您的朋友:

$ cat `which java` | file -
/dev/stdin: ELF 64-bit LSB executable, x86-64, version 1 (SYSV),
dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for
GNU/Linux 2.6.32, BuildID[sha1]=440c433f29884a88f874e6d8260f156f4b352818,
stripped

(使用cat 因为在我的情况下java 是一个符号链接。)

【讨论】:

【参考方案3】:

当我在 64 位机器上运行命令时,我得到以下信息。 java -version 始终为您提供在 Environment 属性中设置的版本或从 JRE 中的 Java 图标中选择的任何内容。您的机器上可能还安装了其他软件。查找“拱门”。

C:\Users\nyera>java -version
java version "1.6.0_27"
Java(TM) SE Runtime Environment (build 1.6.0_27-b07)
Java HotSpot(TM) 64-Bit Server VM (build 20.2-b06, mixed mode)

【讨论】:

就像我说的,我尝试运行 -version 但它没有给我那个信息。

以上是关于确定 JRE 架构 32 位与 64 位 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何检测安装了哪种 JRE——32 位与 64 位

构建 pyinstaller 可执行文件时,我可以控制架构(32 位与 64 位)吗?

32位与64位之谈

32位与64位 兼容编程

32 位与 64 位系统 - 内存限制是位还是字节? [复制]

32位与64位系统的不同点