我在 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/