错误:Surefire 将杀死 self fork JVM。 System.exit(0) 后退出已过去 30 秒

问题描述 投票:0回答:1

我有一个 Spring Boot(不是 Web)项目,其中包含生成子进程的单元测试。主线程完成后,这些过程需要一些时间才能完成。

测试是通过 GitHub 操作使用

mvn package
命令完成的。

此命令将引发错误

Error:  Surefire is going to kill self fork JVM. The exit has elapsed 30 seconds after System.exit(0)

正如类似问题maven-surefire-plugin文档中提到的,我必须设置

surefire.exitTimeout
<forkedProcessExitTimeoutInSeconds>
属性,并以秒为单位增加值。但目前还不清楚我可以在哪里设置该属性。

我尝试了以下方法:

  • mvn package -DforkedProcessTimeoutInSeconds=60
  • mvn package -Dsurefire.timeout=60
  • 配置
    pom.xml
    :
<project>
    <properties>
        <forkedProcessTimeoutInSeconds>60</forkedProcessTimeoutInSeconds>
        <surefire.timeout>60</surefire.timeout>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <additionalProperties>
                        <forkedProcessTimeoutInSeconds>60</forkedProcessTimeoutInSeconds>
                        <surefire.timeout>60</surefire.timeout>
                    </additionalProperties>
                    <arguments>
                        <argument>--forkedProcessTimeoutInSeconds=60</argument>
                        <argument>--surefire.timeout=60</argument>
                    </arguments>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

但是上面的所有选项都会被

maven-surefire-plugin
忽略。

您能否建议我如何增加超时时间?

我的pom.xml:https://github.com/yvasylev/reddit-telegram-forwarder/blob/3.0.0/pom.xml

spring-boot github-actions cicd maven-surefire-plugin
1个回答
0
投票

我找到了解决方案:

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <forkedProcessExitTimeoutInSeconds>60</forkedProcessExitTimeoutInSeconds>
            </configuration>
        </plugin>
    </plugins>
</build>
© www.soinside.com 2019 - 2024. All rights reserved.