简体   繁体   English

Gradle 构建失败:进程“Gradle Test Executor 1”以非零退出值 1 完成

[英]Gradle build fail: Process 'Gradle Test Executor 1' finished with non-zero exit value 1

Gradle build fails when it gets to the :test task (junit tests). Gradle 构建在执行:test任务(junit 测试)时失败。 It gives the error它给出了错误

Process 'Gradle Test Executor 1' finished with non-zero exit value 1

I am using gradle with a java project in eclipse.我在 Eclipse 中使用 gradle 和 java 项目。 Gradle 1.12 and Java 7. The problem seems to be happening when a test is run on a class that connects to a database. Gradle 1.12 和 Java 7。当在连接到数据库的类上运行测试时,问题似乎正在发生。 The odd thing is that the program and tests work fine as java applications.奇怪的是,程序和测试可以作为 java 应用程序正常工作。 There are no problems with the database connection and it compiles and runs correctly.数据库连接没有问题,它可以正确编译和运行。 Does gradle do something that could mess with how it connects to external database servers? gradle 是否会做一些可能会干扰它连接到外部数据库服务器的事情? The problem could have nothing to do with the database so any solution is appreciated.该问题可能与数据库无关,因此任何解决方案都值得赞赏。 I've looked online and on the official gradle site but nothing was helpful.我在网上和官方 gradle 网站上查看过,但没有任何帮助。 Thanks.谢谢。

EDIT编辑

Debug results:调试结果:

14:23:28.661 [DEBUG] [TestEventLogger] 
14:23:28.661 [DEBUG] [TestEventLogger] Test Run PASSED
14:23:28.665 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':test'
14:23:28.665 [LIFECYCLE] [class org.gradle.TaskExecutionLogger] :test FAILED
14:23:28.665 [INFO] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] :test (Thread[main,5,main]) completed. Took 5.552 secs.
14:23:28.666 [DEBUG] [org.gradle.execution.taskgraph.AbstractTaskPlanExecutor] Task worker [Thread[main,5,main]] finished, busy: 6.67 secs, idle: 0.021 secs
14:23:28.808 [LIFECYCLE] [org.gradle.BuildResultLogger] 
14:23:28.808 [LIFECYCLE] [org.gradle.BuildResultLogger] BUILD FAILED
14:23:28.808 [LIFECYCLE] [org.gradle.BuildResultLogger] 
14:23:28.808 [LIFECYCLE] [org.gradle.BuildResultLogger] Total time: 11.75 secs
14:23:28.811 [DEBUG] [org.gradle.api.internal.tasks.compile.daemon.CompilerDaemonManager] Stopping 0 compiler daemon(s).

Error Message:错误信息:

Unexpected exception thrown.
org.gradle.messaging.remote.internal.MessageIOException: Could not read message from '/127.0.0.1:51041'.
    at org.gradle.messaging.remote.internal.inet.SocketConnection.receive(SocketConnection.java:88)
    at org.gradle.messaging.remote.internal.hub.MessageHub$ConnectionReceive.run(MessageHub.java:230)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:66)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: com.esotericsoftware.kryo.KryoException: java.io.IOException: An existing connection was forcibly closed by the remote host
    at com.esotericsoftware.kryo.io.Input.fill(Input.java:141)
    at com.esotericsoftware.kryo.io.Input.require(Input.java:159)
    at com.esotericsoftware.kryo.io.Input.readByte(Input.java:255)
    at org.gradle.messaging.remote.internal.hub.InterHubMessageSerializer$MessageReader.read(InterHubMessageSerializer.java:64)
    at org.gradle.messaging.remote.internal.hub.InterHubMessageSerializer$MessageReader.read(InterHubMessageSerializer.java:53)
    at org.gradle.messaging.remote.internal.inet.SocketConnection.receive(SocketConnection.java:83)
    ... 5 more
Caused by: java.io.IOException: An existing connection was forcibly closed by the remote host
    at sun.nio.ch.SocketDispatcher.read0(Native Method)
    at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43)
    at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
    at sun.nio.ch.IOUtil.read(IOUtil.java:192)
    at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:379)
    at org.gradle.messaging.remote.internal.inet.SocketConnection$SocketInputStream.read(SocketConnection.java:167)
    at com.esotericsoftware.kryo.io.Input.fill(Input.java:139)
    ... 10 more
Unexpected exception thrown.
org.gradle.messaging.remote.internal.MessageIOException: Could not write message [EndOfStream] to '/127.0.0.1:51041'.
    at org.gradle.messaging.remote.internal.inet.SocketConnection.dispatch(SocketConnection.java:115)
    at org.gradle.messaging.remote.internal.hub.MessageHub$ConnectionDispatch.run(MessageHub.java:279)
    at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:66)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: An existing connection was forcibly closed by the remote host
    at sun.nio.ch.SocketDispatcher.write0(Native Method)
    at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:51)
    at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
    at sun.nio.ch.IOUtil.write(IOUtil.java:51)
    at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:487)
    at org.gradle.messaging.remote.internal.inet.SocketConnection$SocketOutputStream.flush(SocketConnection.java:230)
    at org.gradle.messaging.remote.internal.inet.SocketConnection.dispatch(SocketConnection.java:113)
    ... 5 more
 FAILED

Try cleaning your daemons with ./gradlew --stop .尝试使用./gradlew --stop清理你的守护进程。 It works for me.这个对我有用。 This was my error.这是我的错误。 also sometimes I got an IDLE at the end of the build and never ends.有时我会在构建结束时得到一个空闲并且永远不会结束。

* What went wrong:
Execution failed for task ':test'.
> A problem occurred starting process 'Gradle Test Executor 1'

Most probably one of your test go through a System.exit(1) .很可能您的测试之一通过System.exit(1)

It may help to display the test result in console using test -i .使用test -i在控制台中显示测试结果可能会有所帮助。

check if your project its using internally Java 11 or Java 1.8 and the java that your system has:检查您的项目是否在内部使用 Java 11 或 Java 1.8 以及您的系统具有的 java:

to check your java version run: javac --version检查你的java版本运行: javac --version

*Note that some IDEs may override that value to build. *请注意,某些 IDE 可能会覆盖该值以进行构建。

I had a similar issue but it was caused by JAVA_TOOL_OPTIONS :我有一个类似的问题,但它是由JAVA_TOOL_OPTIONS引起的:

JAVA_TOOL_OPTIONS: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/dumps/

non existing path /dumps/ caused the issue in my case.在我的情况下,不存在的路径/dumps/导致了这个问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 进程“ Gradle Test Executor”以非零退出值29完成 - Process 'Gradle Test Executor' finished with non-zero exit value 29 为什么我的构建失败并出现“进程'Gradle Test Executor 1'以非零退出值100完成” - Why are my builds failing with “Process 'Gradle Test Executor 1' finished with non-zero exit value 100” gradle 处理命令 java 以非零退出值 1 完成 - gradle process command java finished with non-zero exit value 1 Gradle 测试执行器以非零退出值 1 失败(IntelliJ Idea 默认 Gradle[7.4.1]/JavaFX[17.0.1] 构建) - Gradle test executor failing with non-zero exit value 1 (IntelliJ Idea default Gradle[7.4.1]/JavaFX[17.0.1] build) org.gradle.process.internal.ExecException:进程'命令以非零退出值1结束 - org.gradle.process.internal.ExecException: Process 'command finished with non-zero exit value 1 完成以非零退出值2-Android Gradle - finished with non-zero exit value 2 - Android Gradle Java用非零退出值1完成-Android Gradle - Java finished with non-zero exit value 1 - Android Gradle 使用 gradle 运行项目导致以非零退出值 1 结束 - Running project with gradle results in finished with non-zero exit value 1 Gradle 以非零退出值 255 完成 - Gradle finished with non-zero exit value 255 Android Studio-Gradle构建完成,退出值非零2 - Android studio - Gradle building finished with non-zero exit value 2
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM