为什么Gradle守护进程会死亡?
如何确定我的Gradle守护进程为何死亡?我收到的唯一信息是isL为什么Gradle守护进程会死亡?,gradle,gradle-daemon,Gradle,Gradle Daemon,如何确定我的Gradle守护进程为何死亡?我收到的唯一信息是isL Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed) 这发生在活动生成中。几个步骤将完成,一个步骤将显示为活动,然后生成失败 这是在将内存参数(XmxXmsPermGen)从调用gradlew的shell脚本移动到gradle.properties并直接调用gradlew之后开始的 build.sh
Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)
这发生在活动生成中。几个步骤将完成,一个步骤将显示为活动,然后生成失败
这是在将内存参数(Xmx
Xms
PermGen
)从调用gradlew
的shell脚本移动到gradle.properties
并直接调用gradlew
之后开始的
build.sh
export GRADLE_OPTS="\"-Xmx1024m\" \"-Xms256m\" \"-XX:MaxPermSize=256m\""
export JAVA_HOME="/usr/local/java/jdk1.6"
exec ./gradlew "$@"
添加到gradle.properties
org.gradle.java.home=/usr/local/java/jdk1.6/
org.gradle.jvmargs=-Xmx1024m -Xms256m -XX:MaxPermSize=256m
更改后,Gradle警告:
To honour the JVM settings for this build a new JVM will be forked. Please consider using the daemon: http://gradle.org/docs/2.2.1/userguide/gradle_daemon.html
即使我们没有要求它这样做,构建仍在守护进程中运行,最终失败。
Gradle构建守护进程意外消失
最常见的情况是当其他东西杀死长期运行的Gradle守护进程和客户端进程时(守护进程使用本地TCP连接进行通信)尝试发送消息但未收到响应
例如,在生成过程中运行
gradle--stop
或killall java
将重现此问题。这是一致性故障吗?使用--info或--debug标志运行gradle可能会给您一个提示,说明您上次使用守护进程构建某个东西有多长时间了,在它死之前?这是相当一致的。我将尝试使用--info或--debug,但我的假设是,我不会得到太多信息,因为进程不会有这些信息,而是守护进程有这些信息。@Jolta我应该注意到这种情况发生在构建中期。此构建成功后需要3.5小时。有时在17分钟内失败,有时在几个小时内失败。有一些可预测的模式,但我不知道要修复什么。我猜是OutOfMemory
:)你能发布构建脚本和gradle.properties的相关差异吗?