我想做一些基本的函数。我正在命令行中运行/构建它。我在看用户指南。还有,做一些简单的任务。

当我开始运行简单的任务时,它被成功构建。但是,在一段时间后,它会显示“它目前正在被另一个Gradle实例使用”,并变成BUILD FAILED。我正在使用终端运行任务。那时候我什么都没做。

如果我关闭产生错误的终端,这个问题就解决了。但是,我知道这不是解决办法。

为什么这个错误经常出现?

如何解决?

并且,请参考任何链接来提高我对Android中Gradle Build系统的知识。


当前回答

对于MAC电脑

请打开“Activity Monitor”,选择“memory”选项,强制静音Android studio和其他正在运行的java进程,就可以解决这个问题。

其他回答

每个人最后, 我有完整的解决方案

Error :- Timeout Gradle cashe its running in other gradle


distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

Please add this Line in Wrapper.Propertis and Sync now
After Sync the project When 
Invalidthcast\restart   to get the requesting componants

locktimeoutexception:等待锁定日志的超时时间 缓存用户缓存(C: \ \ unknown.gradle \ \ journal-1)。它目前在 被另一个Gradle实例使用

我也面临着同样的问题,我通过打开任务管理器,并在后台进程中检查“OpenJDK平台二进制文件”的运行实例,除了Android Stduio,只是“结束任务”这个任务和为我工作

当终止进程和/或删除锁文件工作时,Gradle应该能够自己处理这个问题,永久地解决这个问题。这个问题报告暗示了解决方案:Gradle无法与Gradle服务通信。

检查一下您本地的网络防火墙。就我而言,

允许从127.0.0.1到127.0.0.1的出站流量, sudo iptables -A OUTPUT -p udp -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT 允许来自127.0.0.1的传入流量 sudo iptables -A INPUT -s 127.0.0.1 -p udp -j ACCEPT

解决了这个问题。github上关于类似问题的讨论。

并且,请参考任何链接来提高我对Android中Gradle Build系统的知识。

udacity gradle课程,如果你有时间的话。

非常简单的解决方案:

不需要杀死Android Studio,只需杀死OpenJdkPlatform进程, 然后删除下面的.lock文件:

rootProject/.gradle/<version>/taskHistory

我被这个错误所困扰,不得不删除用户的.gradle/caches/文件夹的内容和项目的.gradle/文件夹的内容才能继续运行。

不知道是什么引起的,可能是一个失败的构建,使这些文件处于锁定状态?