当前位置: 首页 > 知识库问答 >
问题:

Maven surefire虚拟机在EclipseNeon上崩溃或分叉冻结。3

汤承德
2023-03-14

当我从Eclipse(Neon.3,EE版本)运行maven命令“mvn clean install”时,我得到错误:

组织。阿帕奇。专家插件。PluginExecutionException:目标组织的执行默认测试。阿帕奇。专家插件:maven surefire插件:2.12。4:测试失败:分叉的VM没有正确地说再见就终止了。虚拟机崩溃或系统崩溃。你叫出口吗?

Eclipse安装使用m2e-plugin(默认)和Java1.8.0_131。但是我也尝试过一些早期版本,包括1.7. x。

尝试寻找此问题的解决方案,发现:分叉VM在没有正确道别的情况下终止。VM崩溃或调用System.exit

尝试将以下配置添加到pom.xml

<profiles>
    <profile>
        <id>normal_build_profile</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.20</version>
                    <configuration>
                        <!-- Tried with lots of different values, no change -->
                        <threadCount>3</threadCount>
                        <forkCount>3</forkCount>
                        <reuseForks>true</reuseForks>
                        <argLine>-Xmx1024m -XX:MaxPermSize=256m</argLine>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </profile>
</profiles>

在上面的配置中,它在Eclipse中执行此命令(从日志)时冻结

[调试]分叉命令行:cmd。exe/X/C“C:\Java\jdk1.8.0\u 131\jre\bin\Java-Xmx1024m-XX:MaxPermSize=256m-jar C:\workspace\miniTest\target\surefire\surefirebooter2156530837851203141.jar C:\workspace\miniTest\target\surefire2017-06-08T08-58-59\u 461-jvmRun1-surefire2401124720884095509tmp surefire\u 03952770368534211516tmp”

但当我从命令行运行“mvn clean install”时,一切都很好。Eclipse被配置为使用与命令行相同的Maven安装。Maven版本将是3.5。0。(尽管3.3.3版本也出现了这种情况)

由于这似乎与运行测试有关,我应该注意,我也有以下内容:

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <!-- 4.11 Does not require that hamcrest dependency -->
    <version>4.12</version>
    <scope>test</scope>
</dependency>

<dependency>
    <groupId>org.hamcrest</groupId>
    <artifactId>hamcrest-all</artifactId>
    <version>1.3</version>
    <scope>test</scope>
</dependency>

有人知道日蚀是怎么回事吗,因为这似乎与它有关?
从命令行进行构建是相当不方便的。
在没有Maven的Eclipse中运行单元测试是可以的。

共有1个答案

鞠通
2023-03-14
<threadCount>3</threadCount>
<forkCount>0</forkCount>
<reuseForks>false</reuseForks>

至少在我用来调试这个问题的情况下,似乎做到了这一点。

 类似资料:
  • 我的主Ubuntu操作系统上有几个虚拟机在虚拟机上运行。 但是在Windows上的安全更新(Spectre和Meltdown)之后,它们奇怪地停止工作。我试着在谷歌上查找这个问题,但似乎没有其他人遇到过这个问题。 旁注: 我有2个操作系统(Windows/Ubuntu)在双启动下运行。 我在BIOS设置中启用了VT-X/AMD-v,并在Windows机器上禁用了Hyper-V 我不知道这两个操作系

  • 如标题所示:我正试图从集装箱化的詹金斯奴隶那里运行Maven自动化测试,在与此斗争了一周后,现在我已经没有想法了。它的工作原理是在AWS实例与4G的RAM,但在不受限制的(在RAM和CPU)容器,它失败与错误如下。当它运行的唯一情况是当我禁用分叉故障安全插件,但这不是一个选项前进。 我尝试了各种Java /Maven/Failsafe/Surefire选项,我可以用谷歌找到,但没有运气(如添加全局

  • 我想在地图上画一条折线 进口com.google.android.gms.maps.model.Polyline;进口com.google.android.gms.maps.model.PolylineOptions; 导入java.util。ArrayList;导入java.util.List; 公共类 MainActivity extends AppCompatActivity 实现了 OnM

  • 我对场景构建器有意见。我想在按钮上添加ContextMenu。当我在按钮上拖放ContextMenu时,它工作得很好(它出现在Hierarchy选项卡中)。但是当我点击Hierarchy选项卡中预定义的MenuItem(在ContextMenu下)时,Scence Builder会冻结,我不得不关闭它。 谁能帮我一下吗?我知道我可以在Java代码中创建一个ContextMenu,但我想在Scene

  • 查看虚拟机相关的监控告警信息。 监控菜单下的虚拟机页面主要用于查看虚拟机相关的监控告警信息。 入口:在云管平台单击左上角导航菜单,在弹出的左侧菜单栏中单击 “监控/资源/虚拟机” 菜单项,进入虚拟机页面。 查看虚拟机列表 该功能用于查看虚拟机的监控告信息。 在虚拟机页面,支持查看以下信息: 名称:虚拟机的名称。 IP:虚拟机的IP地址。 监控状态:虚拟机是否设置告警以及发生告警。 状态:虚拟机的当