【问题标题】:Java Heap Space - Cannot make large enoughJava 堆空间 - 不能足够大
【发布时间】:2013-07-21 09:34:53
【问题描述】:

我正在尝试在启动程序时设置 Xmx 参数。如果我将其设置为 1408M,则 JRE 可以正常启动。如果我将它设置为 1536M,我会得到 ​​p>

"Could not create the java virtual machine".  

我知道它正在尝试保留连续的内存空间,但我正在运行的机器有 16GB 的 RAM,其中 13GB 目前是空闲的。我正在运行的程序堆空间不足并在我身上崩溃。有什么办法可以解决这个问题吗?

【问题讨论】:

  • 这是 32 位 JVM 吗?
  • 您不能使用 Java 32 位分配超过 1.5GB。

标签: java jvm heap-memory jvm-arguments


【解决方案1】:

使用 64 位 JVM。 32 位 JVM 被限制(取决于操作系统)最多 3 GByte(在 linux 上我有大约 1.5 GByte 的限制)。

【讨论】:

    【解决方案2】:

    由于寻址限制和其他原因需要内存,32 位 JVM 被限制为大约 1.5 GB 的堆空间。在 Windows 上,2 GB 分配给进程,0.5 用于非堆内存。如果您可以在 Windows Server 或 Linux 上使用 PAE,则可以分别寻址高达 3 GB 或 4 GB。

    否则使用 64 位 JVM。

    【讨论】:

      猜你喜欢
      • 2013-01-03
      • 1970-01-01
      • 1970-01-01
      • 2021-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-14
      • 2012-06-15
      相关资源
      最近更新 更多