运行声纳分析时,我们始终遇到内存错误。它是跨机器的间歇性的,但似乎一旦你得到它,它就会持续存在。
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.16:test (default-cli) on project optimus-client-web-configuration: Execution default-cli of goal org.apache.maven.plugins:
maven-surefire-plugin:2.16:test failed: The forked VM terminated without saying properly goodbye. VM crash or System.exit called ?
[ERROR] Command wascmd.exe /X /C ""C:\Program Files\Java\jdk1.7.0_45\jre\bin\java" -javaagent:C:\Users\cxxx\AppData\Local\Temp\jacocoagent8301608889470684052.jar=destfile=target/jacoco.exec,excludes=
*_javassist_* -jar C:\redesign_Trunk\optimus-lms-server\optimus-client-web-configuration\target\surefire\surefirebooter2312966376869893038.jar C:\redesign_Trunk\optimus-lms-server\optimus-client-web-con
figuration\target\surefire\surefire350975689095180011tmp C:\redesign_Trunk\xxx-xx-server\xxx\target\surefire\surefire_45613339175612175619tmp"
在声纳阶段之前运行时,单元测试不会失败。它发生在一个特定的测试上,它激活Spring配置以测试它是否正常工作。可能这个测试比大多数消耗更多的内存,因为它必须加载整个上下文。
我在MAVEN_OPTS中增加内存以使用1024M最大堆。将此配置添加到我的pom
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.16</version>
<configuration>
<argLine>-Xmx1024m</argLine>
</configuration>
</plugin>
答案 0 :(得分:1)
在这个配置中,你只是配置surefire插件在它生成新的jvm时使用这个内存,你需要为mvn
的jvm增加内存
export MAVEN_OPTS="-Xmx2048m"
尝试上面(适当的内存大小)
答案 1 :(得分:0)
另一种解决方案:以管理员身份运行应用程序[Eclipse IDE,SonarQube ...]
问题:
1.当错误日志包含:&#39; ... VM终止时没有正确告别...&#39;
2.错误日志包含:&#34; cmd.exe / C ...错误的内容......&#34;
3.错误日志包含:&#39; ... java.io.tmpdir ... c:\ windows &#39;