这是在Ubuntu上的情况。此前它能够正常工作,但我不知道可能发生了什么改变导致这种情况出现。有没有其他人遇到过这个问题并解决了它?
TL;DR: 在首次构建前关闭Windows Mobile热点(也称为adhoc适配器或Wi-Fi Direct虚拟适配器)。
由于某种原因,在热点开启时,gradle服务器根据%userProfile%\.gradle\daemon\<version>\
中的日志文件,无法接受来自/127.0.0.1的传入连接
。因此,它会不断生成新的守护进程,认为旧的守护进程(等待连接)已经死亡。
每次需要一个新的gradle守护进程(例如打开一个新项目),您都必须关闭热点,等待AS连接到守护进程(例如开始构建,同步gradle文件等),然后重新启用它。
请注意,如果您忘记禁用热点并启动构建/同步过程,则RAM将填满等待gradle守护进程。在再次尝试之前,请将它们全部杀掉,否则您将遇到“内存不足”错误。
我在快捷方式文件中使用这个好命令来一键杀死所有守护进程:C:\Windows\System32\taskkill.exe /F /IM java.exe /T
。当然,这是假设您除了gradle守护进程之外没有其他java进程(在我使用AS时大多数情况下都是这样),并且您不介意重启正在运行的守护进程(在我看来这不是个大问题)。
此问题仅在从AS 4.0升级到4.1后才开始,并持续到下一次升级。
我在Linux上也遇到了同样的问题。 经过追踪,发现是防火墙配置不正确。它阻止了Android Studio通过环回接口使用IP与Gradle守护程序进行通信。
我在Win 10上遇到了同样的错误,我搜索了很多但没有帮助。
恢复所有防火墙设置。
旧版控制面板→系统和安全→Windows Defender→恢复默认值
注意:选项/单词可能不太相似,因为它被翻译了。
更新1:
在连接电脑到互联网之前运行构建,然后在守护程序启动后连接到网络,这样构建就可以正常工作。
或者您可以尝试禁用守护程序,或让它离线工作。
希望这能帮助到某些人。
哇耶。
更进一步的研究发现,原来是松动的 USB 电缆问题。