由于 JUnits,我的 Jenkins 构建内存不足。当我尝试给它(JUnits)超过 4GB 时,它会出错。我使用 Linux 作为我的构建机器。
Invalid maximum heap size: -Xmx4096m
我只是想知道,JUnits 可以使用多少堆大小是否有上限?
“对于 32 位进程模型,进程的最大虚拟地址大小通常为 4 GB,尽管某些操作系统将其限制为 2 GB 或 3 GB。对于 2 GB 限制,最大堆大小通常为 -Xmx3800m (1600m) ),但实际限制取决于应用程序。对于 64 位进程模型,最大值基本上是无限的。
在这里找到了一个很好的答案:
内存分配给 JVM 而不是 JUnit 或任何其他类。并且在 32 位系统上分配最大 4Gb 是有限制的,但是如果您需要更多内存,请移至 64 位机器,因为最大内存分配没有限制。
我猜你正在使用 32 位 jvm .. 检查这篇文章:
它不是 JUnit,而是 JVM。4GB 堆对于 32 位 JVM 来说太大了。