当 -Xmx 设置为超过 1g 时,分叉的虚拟机在没有正确说再见的情况下终止

jjs*_*out 6 java maven maven-surefire-plugin

我正在学习一门课程,其中作业是使用 Maven 执行的,并且 .pom 文件随项目一起提供。该分配需要大约 1.5GB 内存来处理。然而,当提供超过 1GB 时,我收到以下输出:

[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
Run Code Online (Sandbox Code Playgroud)

转储内容如下:

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)
Run Code Online (Sandbox Code Playgroud)

有问题的块是:

<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>
Run Code Online (Sandbox Code Playgroud)

-Xmx 在哪里设置为超过 1g/1024m 我遇到了所描述的问题。