JAVA无效的最大堆大小。指定的大小超过了最大可表示大小

JAVA无效的最大堆大小。指定的大小超过了最大可表示大小,java,Java,我必须运行此命令才能将代码修复为xml文件: java -Xmx5G -cp .:jsoup-1.8.2.jar CheckSyntax test.xml > test2.xml 但它给了我一个错误: Invalid maximum heap size: -Xmx5G The specified size exceeds the maximum representable size. 如何使其工作?如果JVM是32位的,则不能使用开关-d64 java -Xmx2G -cp .:jso

我必须运行此命令才能将代码修复为xml文件:

java -Xmx5G -cp .:jsoup-1.8.2.jar CheckSyntax test.xml > test2.xml
但它给了我一个错误:

Invalid maximum heap size: -Xmx5G
The specified size exceeds the maximum representable size.

如何使其工作?

如果JVM是32位的,则不能使用开关-d64

java -Xmx2G -cp .:jsoup-1.8.2.jar CheckSyntax test.xml > test2.xml

32位java不能使用heapsize>2G

以下是获取java 64位的链接,以允许更大的堆大小。只需选择“Windows脱机(64位)”选项。

可能是因为Java在您的计算机上使用32位指针?您使用的是32位版本的Java。要允许超过~2GB的最大堆大小,您需要使用64位版本。您是否尝试过
-d64
?奇怪的事情:java-64“此java实例不支持64位JVM”,这意味着您没有使用64位版本。检查
java-version
添加其他答案的快速摘要可能是一个好主意,以解释为什么海报将受益于64位版本的java,这样将来任何其他人都可以通过查看您的答案来完全了解如何解决他们的问题。