java - 如果未指定 -d32 或 -d64 等选项,64 位 JVM 是否会以 64 位模式运行

标签 java jvm

我在 64 位 Centos 机器上安装了 64 位 Java。我的问题是,如果我不指定 -d64 选项,即使没有安装 32 位 JVM,JVM 也会以 32 位模式运行吗?

另外我有点好奇我们是否可以将 -d64 选项与“javac”一起使用。如果是,那么它意味着什么或可以在哪里使用?我在阅读 this article 时遇到了这个.

谢谢

最佳答案

为JRE选择数据模型(位)是为了约束应用程序的运行只能在一种模式下运行。 Java 字节码旨在在两种数据模型中工作,因此对于 100% 纯 Java 应用程序,将根据每种架构的行为和优势工作。

但是,如果您的应用程序使用仅在一种模式下工作的 native 库,那么应用程序将在不受支持的模式下失败。为此,您必须明确指出它应该以哪种模式运行。

当您设置 -d32 或 -d64 时,如果 JRE 无法在所选模式下运行,则它不会启动您的应用程序。

关于java - 如果未指定 -d32 或 -d64 等选项,64 位 JVM 是否会以 64 位模式运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10696967/

相关文章:

javascript - 正则表达式验证两个范围之间的数字

java - JVM 在启动时锁定 JAR 文件

Tomcat 5.0.28 内存不足错误

java - Java 中的 DriverManager.getConnection 使用相对路径

Java:未映射的目标属性

java - 带有通用数组的循环?

java - 无法打印出文件内容

jvm - 为什么 JVM 在启动时随着时间的推移执行相同的程序会更快?

java - 为什么 jar list 文件不应包含超过 72 字节的行

macos - MacOS Sierra xgboost jvm软件包安装错误