我们让Jenkins在EC2示例上运行。在进行构建时,我们看到以下错误:
17:29:39.149 [INFO] [org.gradle.api.Project] OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000007ac000000, 234881024, 0) failed; error='Cannot allocate memory' (errno=12)
17:29:39.150 [INFO] [org.gradle.api.Project] #
17:29:39.150 [INFO] [org.gradle.api.Project] # There is insufficient memory for the Java Runtime Environment to continue.
17:29:39.150 [INFO] [org.gradle.api.Project] # Native memory allocation (malloc) failed to allocate 234881024 bytes for committing reserved memory.
我对这个主题进行了研究,并尝试了各种设置,如增加堆内存、RAM和PermGenSize。以下是我目前在Jenkins上的记忆设置:
-Xms256m -Xmx2048m -XX:MaxPermSize=512m
我还有什么遗漏的东西导致了OOM吗?
3条答案
按热度按时间92vpleto1#
我也卖过同样的问题。(我有ec2、t2.Micro、Ubuntu 14、Jenkins、Tomcat、Maven)。默认情况下,您没有交换空间。要确认这一点,请执行以下操作:
只要加一些就行了。尝试使用1 GB作为Begin。
再次检查:
有关更多详细信息,请查看here
envsm3lx2#
这不是JVM级别的内存问题,而是操作系统级别的内存问题。JVM尝试分配224MB,但在操作系统级别上没有这个内存量。当JVM的-Xmx设置大于系统中的空闲内存量时,就会发生这种情况。检查操作系统中的空闲内存量,限制当前JVM的内存,使其在空闲内存内,或者尝试释放内存(通过限制其他进程使用的内存量),或者尝试使用更多内存的EC2示例。
drnojrws3#
如果您的Jules构建因内存不足而失败,请执行以下步骤:
1.增加清单.yml文件中的内存大小
前内存:4.270M(此处增加)
1.将MAVEN_OPTS添加到jules.yml文件的配置参数中
享受:)