我正在尝试启动 Gradle(站点上的 -bin 版本,3.1),但每次都会失败,并显示“无法找到可用的空闲守护进程。我已连接到 100 个不同的守护进程,但无法使用其中任何一个来运行构建。”如果我关闭防火墙,它就会正常工作。防火墙阻止 Gradle 连接到其自己的守护进程。我找不到有关它尝试连接的端口的任何信息。我假设它尝试通过环回连接。有没有办法允许环回接口的所有流量?我尝试将 lo 接口添加到“受信任”区域,但没有成功。我对防火墙的熟悉程度不如对 iptables 的熟悉程度,所以不确定下一步该怎么做。
答案1
我发现了问题。正如我所怀疑的那样,Gradle 守护进程确实在环回接口上监听,但它不允许来自环回接口以外的任何接口的连接。此框上的防火墙(不是我设置的)已为到 localhost 的 tcp 连接启用了伪装,因此到 localhost 的任何内容似乎都来自公共网络接口。我禁用了伪装(没有人使用),firewall-cmd --remove-masquerade
现在它可以正常工作了。