【发布时间】:2016-09-10 20:52:05
【问题描述】:
我在 Jenkins 中构建 Maven 项目时遇到 OutOfMemoryExeption:Permgern space 问题。 在构建过程消息结束时显示为“构建成功”。但是在错误消息下方的那一行之后正在打印。 致命错误:Permgern 空间 一旦这个例外出现,每次整个詹金斯都被绞死,即没有 即使仪表板没有打开,Jenkins 的相应页面。
以下是 Jenkins 的命令行参数错误。 Java HotSpot(TM) 64 位服务器 VM 警告:异常 java.lang.OutOfMemoryError 发生处理程序未知的调度信号 - VM 可能需要强制终止。
以下是来自job-的控制台O/P的错误详情-
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building EmployeeInformation 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
**[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.161 s
[INFO] Finished at: 2016-09-11T00:55:52+05:30
[INFO] Final Memory: 5M/76M**
[INFO] ------------------------------------------------------------------------
Parsing POMs
Established TCP socket on 49708
[Employee_Management] $ "C:\Program Files\Java\jdk1.7.0_03/bin/java" -cp "C:\Users\pc\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven32-agent-1.7.jar;C:\Program Files\Apache\maven\apache-maven-3.3.9\boot\plexus-classworlds-2.5.2.jar;C:\Program Files\Apache\maven\apache-maven-3.3.9/conf/logging" jenkins.maven3.agent.Maven32Main "C:\Program Files\Apache\maven\apache-maven-3.3.9" C:\Users\pc\.jenkins\war\WEB-INF\lib\remoting-2.62.jar C:\Users\pc\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven32-interceptor-1.7.jar C:\Users\pc\.jenkins\plugins\maven-plugin\WEB-INF\lib\maven3-interceptor-**commons-1.7.jar 49708
FATAL: PermGen space
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
FATAL: PermGen space**
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at jenkins.maven3.agent.Maven32Main.main(Maven32Main.java:144)
at jenkins.maven3.agent.Maven32Main.main(Maven32Main.java:74)
Caused by: java.io.EOFException: unexpected stream termination
at hudson.remoting.ChannelBuilder.negotiate(ChannelBuilder.java:365)
at hudson.remoting.ChannelBuilder.build(ChannelBuilder.java:310)
at hudson.remoting.Launcher.main(Launcher.java:530)
at hudson.remoting.Launcher.main(Launcher.java:513)
at hudson.remoting.Launcher.main(Launcher.java:504)
at hudson.remoting.Launcher.main(Launcher.java:500)
... 6 more
以下是我尝试解决的一些可能步骤- (1) 在 POM.XML 中添加了下面的标记。 attached image link for Changed permgern space configuration in POM.xml (2)在环境变量中设置JAVA_OPTS。 attached image link for setting enviromental variables
但是,不幸的是,它们都没有工作。仍然存在问题。 在搜索了一些地方后,我知道了 -XX:PermSize=256m -XX:MaxPermSize=512m 声明将解决问题。但我不确定在哪里以及如何 给出上述声明。
伙计们,请浏览我附加的上述链接,如果我做错了什么,请告诉我。 任何帮助将不胜感激。
BR// 阿比纳什
【问题讨论】:
-
如果可以更新到 hava 8,您应该这样做 - 没有“PermGen 限制”
标签: eclipse maven jenkins heap-dump