Jenkins Maven构建137错误

时间:2014-07-28 06:37:01

标签: java maven jenkins

我有一个Maven项目,它在Jenkins中构建了6个独立的Maven项目。我面临的问题是,在项目构建失败的时候会给出137错误代码:

  

错误:Maven JVM意外终止,退出代码为137

可以在控制台中使用相同的Maven目标成功构建项目,但在Jenkins中它失败了。通过重新启动Jenkins,可以解决问题。

我有一些静态数组列表。这些列表用于某些测试用例。这可能是内存泄漏吗?

5 个答案:

答案 0 :(得分:32)

我在构建服务器上遇到了相同的行为。错误是IMHO与maven内存设置(即MAVEN_OPTS)无关,而是与底层(Linux)机器本身(Jenkins运行)的内存相关联。

(拒绝)Jenkins问题https://jenkins-ci.org/issue/12035提供了有关此问题的更多详细信息:

  

作为参考,状态代码137(128 + 9)通常意味着(可以在unix的风格之间有所不同)。通过接收信号终止该过程。在这种情况下,信号9是SIGKILL和unblockable kill。

     

如果是这种情况底层机器/操作系统需要更多虚拟内存。这可以通过添加物理内存或交换空间来添加。

您应该尝试增加机器的虚拟内存。

注意:
这也解释了Jenkins重启(暂时)解决问题的原因。

答案 1 :(得分:7)

我相信你应该在Jenkins机器的MAVEN_OPTS中增加内存设置的值,例如

MAVEN_OPTS=-Xmx1.5G -XX:MaxPermSize=0.7G 

答案 2 :(得分:1)

通过Jenkins运行Maven时出现此错误:

ERROR: Maven JVM terminated unexpectedly with exit code 137

我意外地把"和#34;在MAVEN_OPTS参数中:

-Xmx1024m and -Xms1024m

然后,我收到了这个错误:

Error: Could not find or load main class and
ERROR: Failed to launch Maven. Exit code - 1

之后,删除'和',我重申Jenkins并收到此错误:

java.lang.OutOfMemoryError: Java heap space

最后,我使用Global MAVEN_OPTS增加了内存:

-Xmx4096m -Xms4096m

这解决了这个问题。所以,这似乎与记忆有关。但是,它可能是与机器/ VM相关的问题(如上面所述的@boskoop)或容器问题(如果JVM通过Jenkins / Docker /等运行)。

答案 3 :(得分:1)

进程被Linux OOM Killer杀死,因为您的计算机资源不足。

通过jvm默认Xmx为机器提供更多内存和/或交换或减少进程的内存占用量directly impacted,这很可能与jvm实际需要的内容相差甚远。

为其提供额外的java命令行选项

-Xmx256m -XX:MaxPermSize=512m

或配置系统变量

MAVEN_OPTS=-Xmx256m -XX:MaxPermSize=512m

MaxPermSize对java 8 +没有用处

答案 4 :(得分:0)

我遇到了相同的错误代码。这个错误代码确实似乎与Jenkins环境中的JVM资源约束有关。我建议在错误发生后第二次重新运行构建,以查看是否可以获得额外/不同的输出,但这肯定取决于构建的哪个部分导致资源问题(在我的原因它是Maven下载)。

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000fb7cb000, 7331840, 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 7331840 bytes for committing reserved memory.
# An error report file with more information is saved as:
# /vagrant/args4java/hs_err_pid10470.log
ERROR: Maven JVM terminated unexpectedly with exit code 1
Finished: FAILURE