You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Anghel Botos (JIRA)" <ji...@apache.org> on 2018/07/24 10:28:00 UTC

[jira] [Created] (SUREFIRE-1541) SurefireBooterForkException: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?

Anghel Botos created SUREFIRE-1541:
--------------------------------------

             Summary: SurefireBooterForkException: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?
                 Key: SUREFIRE-1541
                 URL: https://issues.apache.org/jira/browse/SUREFIRE-1541
             Project: Maven Surefire
          Issue Type: Bug
          Components: Maven Surefire Plugin
    Affects Versions: 2.22.0
            Reporter: Anghel Botos


Attempting to run integration tests using maven-failsafe-plugin with {{-Dmaven.failsafe.debug=false}} yields the following stacktrace:
 


{noformat}
[ERROR] ExecutionException The forked VM terminated without properly saying goodbye. VM crash or System.exit called?
[ERROR] Command was cmd.exe /X /C ""C:\Program Files\Java\jdk1.8.0_121\jre\bin\java" false -jar C:\Users\ANGHEL~1.BOT\AppData\Local\Temp\surefire8539836821793811485\surefirebooter6734575521909210279.jar C:\Users\anghel.botos\AppData\Local\Temp\surefire8539836821793811485 2018-07-24T11-18-12_704-jvmRun1 surefire7184511894589995478tmp surefire_411836142070426630764tmp"
[ERROR] Error occurred in starting fork, check output in log
[ERROR] Process Exit Code: 1
[ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.awaitResultsDone(ForkStarter.java:494)
[ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.runSuitesForkPerTestSet(ForkStarter.java:441)
[ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:293)
[ERROR] at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:245)
{noformat}

 

The issue is the "free-floating" {{false}} that appears in the command line used to start a new JVM. I've traced down the issue to {{org.apache.maven.plugin.surefire.AbstractSurefireMojo#getEffectiveDebugForkedProcess}} where the following code can be found:


{code:java}
        String debugForkedProcess = getDebugForkedProcess();
        if ( "true".equals( debugForkedProcess ) )
        {
            return "-Xdebug -Xnoagent -Djava.compiler=NONE"
                + " -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005";
        }
        return debugForkedProcess;
{code}

...which is quite..."unexpected" to see that one can pass in a value of {{true}}, but not a value of {{false}}.

Please fix with a proper parsing of true/false values for the {{maven.failsafe.debug}} property.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)