The forked VM terminated without properly saying goodbye when -Xmx set to over 1g
Asked Answered
I

0

6

I'm taking a course where the homework is executed using Maven, and the .pom file is provided with the project. The assignment requires about 1.5gb of memory to process. However when providing more than 1gb I receive the following output:

[WARNING] Corrupted STDOUT by directly writing to native stream in forked JVM 1
ExecutionException The forked VM terminated without properly saying goodbye. VM 
crash or System.exit called?
Error occurred in starting fork, check output in log

The dump reads:

Corrupted STDOUT by directly writing to native stream in forked JVM 1. Stream 
'Error occurred during initialization of VM'.
java.lang.IllegalArgumentException: Stream stdin corrupted. Expected comma 
after third character in command 'Error occurred during initialization of VM'.
at org.apache.maven.plugin.surefire.booterclient.output.ForkClient$OperationalData.<init>(ForkClient.java:511)
at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.processLine(ForkClient.java:209)
at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.consumeLine(ForkClient.java:176)
at org.apache.maven.plugin.surefire.booterclient.output.ThreadedStreamConsumer$Pumper.run(ThreadedStreamConsumer.java:88)
at java.lang.Thread.run(Thread.java:748)

The block in question is:

<plugin>
                <!-- executes test with -Xmx option -->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.22.0</version>
                <configuration>
                    <forkCount>4</forkCount>
                    <reuseForks>true</reuseForks>
                    <argLine>-Xmx2048m</argLine>
                    <useSystemClassLoader>true</useSystemClassLoader>
                    <testFailureIgnore>true</testFailureIgnore>
                </configuration>
            </plugin>

Where is -Xmx is set to more than 1g/1024m I run into the described issue.

Intercalate answered 27/6, 2018 at 16:57 Comment(3)
Are you using a 32-bit JVM? You cannot give more than about 1.5 Gb to a 32-bit process. Use a 64-bit Java.Training
Yes, I was using a 32-bit jdk =(Intercalate
Sorry start using 64 Bit...cause 32 Bit times are simply over...Sixtieth

© 2022 - 2024 — McMap. All rights reserved.