我有一台 32 位版本的 Ubuntu 服务器,其中 PAE 处于活动状态,允许充分利用 8GB 的 RAM,但我无法在 Java 中使用超过 2GB 的 RAM。我运行命令
java -Xms6G -Xmx7G -jar server.jar
我收到错误:
Invalid initial heap size: -Xms6G
The specified size exceeds the maximum representable size.
Could not create the Java virtual machine.
我需要对 Java 做些更改吗?服务器是 32 位的,因此 PAE 处于活动状态,以允许服务器使用全部 8GB 的 RAM。
答案1
你是否拥有 PAE 内核并不重要,32 位 JVM 会受到此限制,你可以尝试通过调用以下命令在 JVM 上采用 64 位内存模型
java -d64
但如果你的电脑是 32 位的,这个可能会失败仅有的JVM。如果你想解决这个问题,那就买一个 64 位 JVM。