我在AWS EC2服务器上运行jenkins,访问AWS RDS上的mysql数据库。 在本地运行mvn clean install时一切都很好,但是当jenkins在EC2服务器上运行时我得到了这个错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default-test) on project plenty: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test failed: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?
[ERROR] Command was /bin/sh -c cd /var/lib/jenkins/jobs/Plenty-api/workspace/plenty && /usr/lib/jvm/java-7-oracle/jre/bin/java -XX:MaxPermSize=128m -jar /var/lib/jenkins/jobs/Plenty-api/workspace/plenty/target/surefire/surefirebooter9140193949835996613.jar /var/lib/jenkins/jobs/Plenty-api/workspace/plenty/target/surefire/surefire21120104041831905tmp /var/lib/jenkins/jobs/Plenty-api/workspace/plenty/target/surefire/surefire_08001606298289854825tmp
任何想法?
答案 0 :(得分:0)
哦,是的,那个人从EasyPeasyException(你的一个测试类调用System.exit();
)扩展到完整的DeepShitException(我曾在本地使用它,重新安装了VM,之后一切都很好)。
如果它不是你的一个测试类(或那些的依赖项)调用System.exit()
,你将不得不找到VM崩溃的转储并将它们添加到问题中以获得进一步的帮助(遗憾的是我不能处理存储在此类转储文件中的任何内容 - 但找到解决方案通常是团队协作:))。
插件文档中也记录了这一点:http://maven.apache.org/surefire/maven-surefire-plugin/faq.html#vm-termination