守望者爬行失败。使用节点搜寻器重试一次

时间:2018-03-23 06:05:52

标签: react-native watchman

  

守望者爬行失败。使用节点搜寻器重试一次。通常这个   当守望者没有跑步时发生。创建一个空的.watchmanconfig   文件在项目的根文件夹中或初始化git或hg   您项目中的存储库。

     

错误:watchman --no-pretty get-sockname   返回时退出代码= 1,signal = null,stderr =   2018-03-23T11:33:13,360:[0x7fff9755f3c0]的主人   / usr / local / var / run / watchman / root-state是uid 501并且不匹配   你的euid 0

6 个答案:

答案 0 :(得分:7)

您正在以root身份运行watchman,但是状态目录可能包含触发器定义,从而允许生成任意命令,并不归root所有。这是一个安全问题,因此守望者拒绝开始。

解决此问题的最安全方法是通过运行以下命令删除状态目录:

rm -rf /usr/local/var/run/watchman/root-state

我建议您避免运行希望使用sudo使用守望者的工具,以避免再次发生这种情况。

答案 1 :(得分:3)

我对此确实有疑问,但终于找到了答案。

Here's a screenshot of the post that helped me.

https://github.com/facebook/watchman/issues/751#issuecomment-542300670

整个论坛有多种我尚未尝试过的解决方案,但这是对我有用的解决方案!希望这会有所帮助。

答案 2 :(得分:1)

我在Linux上通过在终端上使用以下命令解决了这个问题。

$ echo 256 | sudo tee -a /proc/sys/fs/inotify/max_user_instances

$ echo 32768 | sudo tee -a /proc/sys/fs/inotify/max_queued_events

$ echo 65536 | sudo tee -a /proc/sys/fs/inotify/max_user_watches

$ pkill node

然后:

$ npm start

$ expo start (if you are using expo)

答案 3 :(得分:1)

@jaishankar 的帖子对我有用.. thakns Jai... 首先,杀死所有正在运行的服务器并关闭您的终端。 转到“系统首选项”->“安全和隐私”->“隐私”选项卡 向下滚动并单击“完整磁盘访问” 确保您检查了“终端”和“守望者”。 现在重新启动终端并尝试再次运行它就可以了!!

答案 4 :(得分:0)

使用sudo命令来运行watchman。

sudo npm run test

出现此问题是因为您可能以root身份运行watchman。

答案 5 :(得分:0)

正如Jodie上面建议的那样,我尝试了以下操作,并且效果很好,这是出于其他人在我的Mac中尝试解决以下问题的其他步骤的好处

  1. 首先,杀死所有正在运行的服务器并关闭终端。
  2. 转到“系统偏好设置”->“安全和隐私”->“隐私”标签
  3. 向下滚动并单击“全盘访问”
  4. 确保您已选中“ Terminal”和“ Watchman”。
  5. 现在重新启动终端,然后再次尝试运行即可!!