得到以下错误,但不是100%确定原因。目前得到这个问题时,我运行我的应用程序在ios模拟器
我试着做npm安装watchman,但我刚刚看到了npm软件包的最新更新,它似乎已经贬值.
events.js:292
throw er; // Unhandled 'error' event
^
Error: EMFILE: too many open files, watch
at FSEvent.FSWatcher._handle.onchange (internal/fs/watchers.js:127:28)
Emitted 'error' event on NodeWatcher instance at:
at NodeWatcher.checkedEmitError
at FSWatcher.emit (events.js:315:20)
at FSEvent.FSWatcher._handle.onchange (internal/fs/watchers.js:133:12) {
errno: -24,
syscall: 'watch',
code: 'EMFILE',
filename: null
}
2条答案
按热度按时间ztmd8pv51#
此错误是由watchman引起的。
您应该在终端中运行
brew install watchman
。如果watchman安装失败,您应该通过以下方式将这些目录的所有权更改为您的用户
请参阅您的终端中的提示。
最后运行
brew install watchman
,问题应该得到解决。vm0i2vca2#
对于那些使用Mac M1的人,我尝试了上面的brew安装和升级watchman,但是没有成功。我的具体问题是,react-native项目可以通过'npm run ios'在模拟器上正常构建,但是当通过xcode归档或构建时,我会得到这个错误。几个小时后,这是什么:
希望这将保存别人的6个小时,我花了调试和试图弄清楚这一点。
编辑:这又坏了,所以必须按照下一个来修复它:
此错误是由于mac m1芯片的模块fsevents中的错误造成的。请参阅线程:https://github.com/facebook/metro/issues/668
它得到了修复与新版本的watchman。升级您的watchman通过brew。删除您的项目,并从git下载,并重建一切沿着pod安装,然后它应该归档没有问题。