【问题标题】:Issue with `npm start`: ERROR watch EMFILE although open files limit = 65536`npm start` 的问题:尽管打开的文件限制 = 65536,但仍然看 EMFILE
【发布时间】:2015-08-07 01:21:44
【问题描述】:

ulimit -a日志:

core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
max locked memory       (kbytes, -l) unlimited
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65536
pipe size            (512 bytes, -p) 1
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 709
virtual memory          (kbytes, -v) unlimited

虽然我在 npm start 时仍然收到 EMFILE 错误。

react-native@0.3.11 start /node_modules/react-native ./packager/packager.sh

 ===============================================================
 |  Running packager on port 8081.       
 |  Keep this packager running while developing on any JS         
 |  projects. Feel free to close this tab and run your own      
 |  packager instance if you prefer.                              
 |                                                              
 |     https://github.com/facebook/react-native                 
 |                                                              
 ===============================================================

在/中寻找JS文件

React 打包器准备就绪。

 ERROR  watch EMFILE
{"code":"EMFILE","errno":"EMFILE","syscall":"watch"}
Error: watch EMFILE
    at exports._errnoException (util.js:746:11)
    at FSWatcher.start (fs.js:1172:11)
    at Object.fs.watch (fs.js:1198:11)
    at NodeWatcher.watchdir (/node_modules/sane/src/node_watcher.js:144:20)
    at Walker.<anonymous> (/node_modules/react-native/node_modules/sane/src/node_watcher.js:351:12)
    at Walker.emit (events.js:110:17)
    at /node_modules/react-native/node_modules/sane/node_modules/walker/lib/walker.js:69:16
    at FSReqWrap.oncomplete (fs.js:95:15)

【问题讨论】:

    标签: node.js npm react-native osx-yosemite


    【解决方案1】:

    您忘记安装 watchman,您可以这样做:

    通过 Homebrew 在 OSX 上安装

    brew update
    brew install watchman
    

    从源安装

    git clone https://github.com/facebook/watchman.git
    cd watchman
    ./autogen.sh
    ./configure
    make
    sudo make install
    

    【讨论】:

    • 感谢您的帮助!我遇到了同样的问题,这让我发疯了
    • 老兄,非常感谢。我在找这个。我刚开始在 android 上使用 react-native,找不到任何有类似问题的人。编辑完每个该死的进程/文件限制配置后,我发现我仍然收到此错误。
    【解决方案2】:

    您的节点服务器的根目录似乎是“/”,所以根目录下的文件太多导致错误。

    【讨论】:

    • 我遇到了同样的问题。它正在寻找正确文件夹中的文件:/Users/user/workspace/mobile/project 也会导致此问题
    猜你喜欢
    • 2021-03-01
    • 1970-01-01
    • 2023-02-01
    • 2022-07-22
    • 1970-01-01
    • 2018-10-01
    • 2020-10-30
    • 1970-01-01
    相关资源
    最近更新 更多