运行 create-react-native-app 测试时出现 FSEvents 错误

FSEvents error when running create-react-native-app tests

create-react-native-app 上 运行 yarn run test 时出现以下错误:

$ yarn run test
yarn run v1.0.1
$ node node_modules/jest/bin/jest.js --watch
2017-09-13 14:53 node[2839] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
2017-09-13 14:53 node[2839] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
2017-09-13 14:53 node[2839] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
2017-09-13 14:53 node[2839] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
events.js:160
      throw er; // Unhandled 'error' event
      ^

Error: Error watching file for changes: EMFILE
    at exports._errnoException (util.js:1022:11)
    at FSEvent.FSWatcher._handle.onchange (fs.js:1282:11)
Segmentation fault: 11

Google 了一下,似乎与 OSX Sierra(我的版本是 10.12.6)和 Watchman 有关。 一些人建议增加最大文件限制,我已经这样做了,并升级了 watchman,我尝试这样做但没有成功。

我自己并没有实际安装 watchman,我认为它是作为 create react native app 的一部分捆绑在一起的。

节点是通过 nvm 安装的,我已经尝试过 v7.2.1 和 8.2.1

任何帮助都会很棒。

谢谢。

我也有这个问题。

您可能没有正确安装 'watchman' 包。

检查你没有用 npm 或 yarn 安装 watchman。 然后用brew安装watchman。

然后一切正常。我还安装了 jest-cli 包,这对测试非常有用。

希望对您有所帮助。