这个问题在这里已有答案:
4114
2017-09-25 15:03
起源
嗯... VM崩溃或System.exit调用? - Sébastien Le Callonnec
这可能是记忆问题吗?我一直在Jenkins服务器上遇到这个问题并且无法确定原因。 - mmalmeida
@mmalmeida - 如果它是一个内存问题,它可能会出现在其他东西中,并且很有可能在系统日志的日志消息中提到它;例如在/ var / log / messages中 - Stephen C
答案:
有什么建议么?
异常的错误消息可能解释了发生了什么。你的一个单元测试也有
- 叫
System.exit()
, 要么 - 破坏了单元测试线束,或
- 做了一些已经崩溃了运行它的JVM的东西。
我们不能告诉你它是哪个。
(我想这个问题正在被报告,因为maven JVM期望子JVM将单元测试结果写入其标准输出。它从孩子那里得到的是错过了说单元测试的消息(或其他)已经完成了。根本原因可能与建议的替代方案有所不同,但我对此表示怀疑,并且毫无意义推测......)
日志文件中可能存在更多有关违规单元测试的信息。检查/他们。
6
2017-09-25 15:15
我在运行maven目标“包”时遇到了同样的问题。 在执行“package”之前执行目标“clean”时问题得到了解决
4
2017-07-30 12:38
我有同样的问题。原来我更新了我的lib而没有更新我的java版本,我有一个太新的servlet.jar。 在'forked VM bla exception'之前,我在日志中发现了以下消息:
Caused by: java.lang.UnsupportedClassVersionError: javax/servlet/ServletRequest : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
at java.lang.Class.getMethod0(Class.java:2670)
at java.lang.Class.getMethod(Class.java:1603)
at org.apache.maven.surefire.util.ReflectionUtils.tryGetMethod(ReflectionUtils.java:57)
at org.apache.maven.surefire.common.junit3.JUnit3TestChecker.isSuiteOnly(JUnit3TestChecker.java:64)
at org.apache.maven.surefire.common.junit3.JUnit3TestChecker.isValidJUnit3Test(JUnit3TestChecker.java:59)
at org.apache.maven.surefire.common.junit3.JUnit3TestChecker.accept(JUnit3TestChecker.java:54)
at org.apache.maven.surefire.common.junit4.JUnit4TestChecker.accept(JUnit4TestChecker.java:51)
at org.apache.maven.surefire.util.DefaultScanResult.applyFilter(DefaultScanResult.java:97)
at org.apache.maven.surefire.junit4.JUnit4Provider.scanClassPath(JUnit4Provider.java:194)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:92)
更新JVM有帮助。
3
2018-03-24 23:56
我在jenkins中遇到同样的问题,如同在接受的答案中报告的那样,并且失去了一个小时才意识到问题是jenkins的工作名称中有一个空格,这是在制造一些东西(仍然不知道是什么) invfire插件的调用变得疯狂,因为作业名称是jenkins工作区内的所有内容的文件夹。
所以,要明确的是,詹金斯与这个问题毫无关系,我只是在詹金斯看到它,因为只有我在路径上有一个空间
我希望这有助于其他人。这是肯定的2.14.1和2.16。
2
2018-01-29 23:12
同样在这里,詹金斯突然有一天突然发生错误。我配置我的jenkins工作使用“maven 3”而不是像之前的“maven 2 legacy”。这解决了这个问题。 - matthaeus
这可能与管理员权限有关。运行构建时我遇到了同样的问题 mvn clean install
来自Cygwin。
现在每次构建我都会启动cygwin作为“以管理员身份运行”,问题就解决了。
0
2018-01-06 19:22