运行react-native start时出错

时间:2015-11-27 22:28:11

标签: node.js react-native

跑步react-native start时出现了一个奇怪的错误:

 ERROR  watch /home/augustin/Workspace/MyProject ENOSPC
{"code":"ENOSPC","errno":"ENOSPC","syscall":"watch /home/augustin/Workspace/MyProject","filename":"/home/augustin/Workspace/MyProject"}
Error: watch /home/augustin/Workspace/MyProject ENOSPC
    at exports._errnoException (util.js:874:11)
    at FSWatcher.start (fs.js:1234:19)
    at Object.fs.watch (fs.js:1262:11)
    at NodeWatcher.watchdir (/home/augustin/Workspace/MyProject/node_modules/react-native/node_modules/sane/src/node_watcher.js:144:20)
    at new NodeWatcher (/home/augustin/Workspace/MyProject/node_modules/react-native/node_modules/sane/src/node_watcher.js:45:8)
    at /home/augustin/Workspace/MyProject/node_modules/react-native/packager/react-packager/src/FileWatcher/index.js:95:21
    at tryCallOne (/home/augustin/Workspace/MyProject/node_modules/react-native/node_modules/promise/lib/core.js:37:12)
    at /home/augustin/Workspace/MyProject/node_modules/react-native/node_modules/promise/lib/core.js:103:15
    at flush (/home/augustin/Workspace/MyProject/node_modules/react-native/node_modules/promise/node_modules/asap/raw.js:50:29)
    at doNTCallback0 (node.js:419:9)

See http://facebook.github.io/react-native/docs/troubleshooting.html
for common problems and solutions.
/home/augustin/Workspace/MyProject/node_modules/react-native/private-cli/src/server/server.js:91
    if (error.code === 'EADDRINUSE') {
             ^

TypeError: Cannot read property 'code' of undefined
    at process.<anonymous> (/home/augustin/Workspace/MyProject/node_modules/react-native/private-cli/src/server/server.js:105:14)
    at emitOne (events.js:77:13)
    at process.emit (events.js:169:7)
    at process._fatalException (node.js:223:26)

如果我查看/home/augustin/Workspace/MyProject/node_modules/react-native/private-cli/src/server/server.js,显然err未定义:

  process.on('uncaughtException', error => {
    if (error.code === 'EADDRINUSE') {
      console.log(
        chalk.bgRed.bold(' ERROR '),
        chalk.red('Packager can\'t listen on port', chalk.bold(args.port))
      );
    ...
  }

这怎么可能?使用:

▶ node --version
v4.2.2

3 个答案:

答案 0 :(得分:7)

我通过安装watchman来解决了这个问题。

引用this page

  

我们建议您安装watchman,否则您可能会点击一个节点文件来查看错误。

不建议,依赖!

答案 1 :(得分:7)

显示此错误是因为您的守望者已观看过多文件并超出其限制。因此,有两种方法可以解决它使用守望者并取消限制或不使用守望者,您可以通过在终端上使用以下命令增加inotify手表的数量来修复它。

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

答案 2 :(得分:1)

我知道这是一个老问题,但在我的案例中针对此问题的真正解决方案是此Stackoverflow question中描述的问题 当我使用docker构建Android应用程序时,结果是我的驱动器上没有使用的空间不足。 React Native在下面使用了node-js,但对于没有经验的人来说,它并不那么明显。

相关问题