17

当我运行时react-native start,我收到以下消息

错误:触发了不可恢复的条件。守望者需要你的帮助!触发条件为timestamp=1489123194:inotify-add-watch(/var/www/html/eventManager/android/app/src/main/res/mipmap-mdpi) -> 用户对inotify手表总数的限制已达到;增加 fs.inotify.max_user_watches sysctl 所有请求将继续失败并显示此消息,直到您解决了潜在问题。您将在https://facebook.github.io/watchman/docs/troubleshooting.html#poison-inotify-add-watch找到有关解决此问题的更多信息

at ChildProcess.<anonymous> (/var/www/html/bookLister/node_modules/fb-watchman/index.js:207:21)
at emitTwo (events.js:106:13)
at ChildProcess.emit (events.js:191:7)
at maybeClose (internal/child_process.js:852:16)
at Socket.<anonymous> (internal/child_process.js:323:11)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at Pipe._handle.close [as _onclose] (net.js:492:12)
4

8 回答 8

37
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

守望者关闭服务器

这个有帮助

于 2017-03-10T07:14:06.283 回答
6

只需在终端中运行这些命令:

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
watchman shutdown-server  

其他方式制作脚本package.json

"scripts": {
    "start": "node node_modules/react-native/local-cli/cli.js start",
    "test": "jest",
    "flow": "flow",
    "flow-stop": "flow stop",
    "watch-need-help": "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 && watchman shutdown-server"
  },

在项目目录的终端上运行以下命令

npm run watch-need-help
于 2017-12-09T11:09:03.907 回答
4

增加 inotify 限制以增加您可以监控的文件数量的限制。

$ echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
$ sudo sysctl -p

请通过获取更多信息

于 2019-07-15T04:38:18.490 回答
3

这一个也很有帮助。

echo 999999 | sudo tee -a /proc/sys/fs/inotify/max_user_watches  && echo 999999 | sudo tee -a  /proc/sys/fs/inotify/max_queued_events && echo 999999 | sudo tee  -a /proc/sys/fs/inotify/max_user_instances && watchman  shutdown-server
于 2018-05-23T06:45:50.177 回答
1

更新

守望者

到最新(4.7.0)版本帮助我解决了这个问题。

于 2017-07-25T17:16:41.670 回答
1

这个帮助在 github 问题上找到了它

echo 999999 | sudo tee -a /proc/sys/fs/inotify/max_user_watches && echo 999999 | sudo tee -a /proc/sys/fs/inotify/max_queued_events && echo 999999 | sudo tee -a /proc/sys/fs/inotify/max_user_instances && watchman shutdown-server && sudo sysctl -p

[https://github.com/facebook/watchman/issues/163]@eladcandroid 1

于 2022-03-01T05:59:52.807 回答
1

这个对我有用

watchman watch-del-all
watchman shutdown-server

这是我遵循的链接。

于 2021-12-07T00:18:24.243 回答
0

您可以通过尝试以下解决方案之一来解决它:

首先通过终端中的代码行并对其进行测试:

echo 999999 | sudo tee -a /proc/sys/fs/inotify/max_user_watches  && echo 999999 | sudo tee -a  /proc/sys/fs/inotify/max_queued_events && echo 999999 | sudo tee  -a /proc/sys/fs/inotify/max_user_instances && watchman  shutdown-server

或尝试在项目的根目录中使用“react-native run-android”或“run-ios”,然后(在其他终端中)“react-native start”

否则,调试器页面可能在以前的会话中保持打开状态。完全关闭选项卡,然后在新选项卡中打开调试器解决了这个问题。

如果上述解决方案均不适用于您,请尝试重新启动 PC

于 2020-10-08T14:19:41.423 回答