Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java SureFire插件的问题:“";分叉的虚拟机没有适当地说再见就终止了。调用VM崩溃或System.exit&引用;_Java_Junit_Powermock_Maven Surefire Plugin - Fatal编程技术网

Java SureFire插件的问题:“";分叉的虚拟机没有适当地说再见就终止了。调用VM崩溃或System.exit&引用;

Java SureFire插件的问题:“";分叉的虚拟机没有适当地说再见就终止了。调用VM崩溃或System.exit&引用;,java,junit,powermock,maven-surefire-plugin,Java,Junit,Powermock,Maven Surefire Plugin,运行单元测试时发生以下异常: org.apache.maven.lifecycle.LifecycleExecutionException: ExecutionException; nested exception is java.util.concurrent.ExecutionException: java.lang.RuntimeException: The forked VM terminated without saying properly goodbye. VM crash or

运行单元测试时发生以下异常:

org.apache.maven.lifecycle.LifecycleExecutionException: ExecutionException; nested exception is java.util.concurrent.ExecutionException: java.lang.RuntimeException: The forked VM terminated without saying properly goodbye. VM crash or System.exit called ?
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:719)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
at java.lang.reflect.Method.invoke(Method.java:600)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
有什么建议吗

有什么建议吗

异常的错误消息可能解释了发生的情况。您的一个单元测试

  • 调用了
    System.exit()
    ,或
  • 单元测试线束断裂,或
  • 所做的操作使运行它的JVM崩溃
我们不能告诉你那是什么

(我认为报告这个问题是因为maven JVM希望子JVM将单元测试结果写入其标准输出。它从子JVM得到的信息丢失了(或其他信息)也就是说,单元测试已经完成。根本原因可能与建议的备选方案不同,但我对此表示怀疑,这是毫无意义的推测……)


日志文件中可能有更多关于违规单元测试的信息。请检查/他们。

这可能与管理员权限有关。我在从Cygwin运行build
mvn clean install
时也遇到了同样的问题


现在,每次构建时,我都以“以管理员身份运行”的身份启动cygwin,问题就解决了。

在运行maven目标“包”时,我也面临同样的问题。
当我在执行“package”之前执行目标“clean”时,问题得到了解决。

我只有在jenkins中遇到了与接受答案中报告的相同的问题,并且浪费了一个小时才意识到问题在于jenkins作业名中有一个空格,这是在制造一些东西(仍然不知道是什么)在调用surefire插件的过程中,由于作业名称是jenkins工作区中的文件夹,所有内容都在该文件夹中,因此会变得疯狂

所以,要明确的是,詹金斯与这个问题无关,我只在詹金斯身上看到它,因为只有在那里,我的道路上才有一个空间


我希望这对其他人有帮助。这是在2.14.1和2.16下确定的

我也有同样的问题。结果是我更新了我的libs而没有更新我的java版本,而且我的servlet.jar有点太新了。 在“分叉VM bla异常”之前,我在日志中发现了以下消息:

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有帮助。

Hmmm。。。调用VM崩溃或System.exit?可能是内存问题吗?我在Jenkins服务器上遇到这个问题已经有一段时间了,但还不能确定原因。@mmalmeida-如果是内存问题,它可能会出现在其他内容中,并且很有可能在系统日志的日志消息中提到它;e、 g./var/log/messages在这里,只有一天詹金斯突然发生了错误。我将jenkins作业配置为使用“maven 3”,而不是以前的“maven 2 legacy”。解决了这个问题。