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.