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

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

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

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

如何解决?

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


当前回答

除了上面的答案,你还需要弄清楚为什么gradle进程退出而不释放锁来永久修复它。

在我的情况下,我做了所有*。锁定文件删除和Android Studio的无效缓存选项。但问题不断出现。

在终端中手动运行gradlew显示,当JVM堆空间耗尽时,gradle进程会过早退出。这个回答帮助解决了这个问题。

./gradlew build #to detect what crashes gradle processes
./gradlew --stop #to stop any running gradle processes

在解决问题后(例如:堆耗尽)

find .gradle/ -type f -name "*.lock" -delete #delete lock files
./gradlew build #Try building the project

其他回答

Mac用户:

你需要给gradle许可:

sudo gradle

这些答案我都试过了,包括杀死java进程,在HOME_DIR和project dir中删除.gradle,重启Android Studio,甚至重启OS。

它开始正常工作后,我启动gradle同步。

我在mac上也遇到了同样的问题:

注意,你的项目不是在一个外部硬盘上。项目的位置必须在带有操作系统的硬盘上。

(构建Ionic应用程序)

这可能是因为Android Studio的实例不止一个。

在@Sean Stayns的回答中引用了一个场景,以防它能帮助到任何人:如果你把你的项目保存在谷歌Drive文件夹中——不要这样做。只需将项目移动到本地驱动器即可解决此问题。

In the case we were trying to solve, were were also getting the "It is currently in use by another Gradle instance" error and nothing we tried here worked. The process ID was unknown as well. It didn't immediately occur to me to ask where the project was being saved, so in case anyone new to Android Dev is saving their projects to a Google Drive folder, just move over to your local drive. I would have just left this as a comment in @Sean Stayns's answer, but I can't comment. Hopefully it benefits someone.