【问题标题】:Issues with SureFire BooterSureFire 引导程序的问题
【发布时间】:2017-02-10 12:17:23
【问题描述】:

最近我可以观察到从 surefire 插件启动的 TestNG 测试的非常奇怪的行为。一旦套件完成,测试执行就会挂起,没有任何异常或信息。杀死执行并清除工作区后,SurefireBotter 似乎挂了:

    Failed to clean project: Failed to delete C:\[path]\target\surefire\surefirebooter380043352616947373.jar
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:317)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:152)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:483)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to clean project: Failed to delete C:\[path]\target\surefire\surefirebooter380043352616947373.jar
        at org.apache.maven.plugin.clean.CleanMojo.execute(CleanMojo.java:215)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:106)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
        ... 19 more
Caused by: java.io.IOException: Failed to delete C:\[path]\target\surefire\surefirebooter380043352616947373.jar
        at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:249)
        at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:191)
        at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:158)
        at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:158)
        at org.apache.maven.plugin.clean.Cleaner.delete(Cleaner.java:117)
        at org.apache.maven.plugin.clean.CleanMojo.execute(CleanMojo.java:193)

奇怪的是,在挂起后用 maven 手动杀死进程后,我仍然可以在系统中看到负责该引导程序的 java 进程。

我使用的框架是基于 Spring 的,但是我不知道这是否有意义 :)

任何提示都会非常受欢迎:)

【问题讨论】:

    标签: maven-3 maven-surefire-plugin


    【解决方案1】:

    您可以使用 JPS(JDK 提供的一种工具)杀死 java 进程。 JPS 将列出进程和 ID。您可以通过 id 杀死进程

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-20
      • 2015-11-24
      • 1970-01-01
      • 2011-04-03
      • 2020-12-06
      • 2013-04-22
      • 1970-01-01
      相关资源
      最近更新 更多