簡體   English   中英

Maven 命令“mvn clean test”導致構建失敗

[英]Maven command 'mvn clean test' causes build failure

我有一個用於 Java 應用程序的 Maven 項目。 我使用的軟件版本如下:Maven 3.6.3、Java 1.8.0_241。

我在這個 Maven 項目中很少有 junit 測試,我正在嘗試使用 Maven“mvn”命令運行它們。 當我在我的 Maven 項目上運行命令“mvn clean test”來運行我的單元測試時,我得到了下面提到的構建失敗。

[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  02:48 min
[INFO] Finished at: 2020-02-21T09:37:00+05:30
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:test (default-test) on project Myproject-restapis: There are test failures.
[ERROR]
[ERROR] Please refer to F:\eclipseWorkspaces\my_project\target\surefire-reports for the individual test results.
[ERROR] Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.
[ERROR] The forked VM terminated without properly saying goodbye. VM crash or System.exit called?
[ERROR] Command was cmd.exe /X /C "C:\jdk1.8.0_241\jre\bin\java -jar C:\Users\mukul\AppData\Local\Temp\surefire4895736141834565700\surefirebooter185004090178601900.jar C:\Users\mukul\AppData\Local\Temp\surefire4895736141834565700 2020-02-21T09-34-41_267-jvmRun1 surefire413243705282645614tmp surefire_01613681214173913161tmp"
[ERROR] Process Exit Code: 0
[ERROR] Crashed tests:
[ERROR] com.example.test.SampleTest
[ERROR] org.apache.maven.surefire.booter.SurefireBooterForkException: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?
[ERROR] Command was cmd.exe /X /C "C:\jdk1.8.0_241\jre\bin\java -jar C:\Users\mukul\AppData\Local\Temp\surefire4895736141834565700\surefirebooter185004090178601900.jar C:\Users\mukul\AppData\Local\Temp\surefire4895736141834565700 2020-02-21T09-34-41_267-jvmRun1 surefire413243705282645614tmp surefire_01613681214173913161tmp"
[ERROR] Process Exit Code: 0
[ERROR] Crashed tests:
[ERROR] com.example.test.SampleTest
[ERROR]         at org.apache.maven.plugin.surefire.booterclient.ForkStarter.fork(ForkStarter.java:669)
[ERROR]         at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:282)
[ERROR]         at org.apache.maven.plugin.surefire.booterclient.ForkStarter.run(ForkStarter.java:245)
[ERROR]         at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeProvider(AbstractSurefireMojo.java:1183)
[ERROR]         at org.apache.maven.plugin.surefire.AbstractSurefireMojo.executeAfterPreconditionsChecked(AbstractSurefireMojo.java:1011)
[ERROR]         at org.apache.maven.plugin.surefire.AbstractSurefireMojo.execute(AbstractSurefireMojo.java:857)
[ERROR]         at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
[ERROR]         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210)
[ERROR]         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156)
[ERROR]         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148)
[ERROR]         at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
[ERROR]         at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
[ERROR]         at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
[ERROR]         at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
[ERROR]         at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
[ERROR]         at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
[ERROR]         at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
[ERROR]         at org.apache.maven.cli.MavenCli.execute(MavenCli.java:957)
[ERROR]         at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289)
[ERROR]         at org.apache.maven.cli.MavenCli.main(MavenCli.java:193)
[ERROR]         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR]         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[ERROR]         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[ERROR]         at java.lang.reflect.Method.invoke(Method.java:498)
[ERROR]         at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282)
[ERROR]         at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225)
[ERROR]         at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
[ERROR]         at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)

我在網上看了很多關於上述問題的信息,但幾天來一直無法解決這個問題。

命令“mvn clean install -DskipTests”對我來說運行良好,並且構建成功。

任何人都可以嘗試使用 Maven 命令“mvn clean test”為上述問題提供解決方案。

好吧,我遇到了完全相同的問題,我解決它的方法是為我的測試正確配置日志..

我有一個多模塊項目,我在我的父項目的根目錄中添加了一個 logback-test.xml 並指向我的 maven-surefire-plugin 加載這個文件。 看下面的配置:

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <argLine>-Dlogback.configurationFile=${project.basedir}/../logback-test.xml</argLine>
                </configuration>
            </plugin>

在 logbook-test.xml 中,我減少了很多日志並添加了一些庫包以從 WARN 級別打印。

<logger name="org.apache.solr" level="WARN" />

重要提示:確保將所有 System.out.println 替換為 log.debug

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM