我安装了ExtReact,带有示例。我跑的时候
npm start
我收到错误:
ERROR in [@extjs/reactor-webpack-plugin]: Error:
[ERR] BUILD FAILED
[ERR] com.sencha.exceptions.BasicException: User limit of inotify watches
reached
[ERR]
[ERR] Total time: 13 seconds
[ERR] /home/user/project/build/ext-react/build.xml:101:
com.sencha.exceptions.BasicException: User limit of inotify watches reached
[ERR] A log is available in the file "/home/user/project/build/ext-
react/sencha-error-20171027.log"
如何解决此错误?
答案 0 :(得分:5)
为什么?
用于同步文件(例如dropbox,git等)的程序使用inotify来注意文件系统的更改。该限制可以通过-
查看cat /proc/sys/fs/inotify/max_user_watches
对我来说,它显示 100000 。如果此限制不足以监视目录中的所有文件,则会引发此错误。
增加inotify观察者的数量(简短版):
如果您正在运行 Debian,RedHat或其他类似的Linux发行版,请在终端中运行以下命令:
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
如果您正在运行 ArchLinux ,请改为运行以下命令(有关原因,请参见此处):
echo fs.inotify.max_user_watches=524288 | sudo tee /etc/sysctl.d/40-max-user-watches.conf && sudo sysctl --system
然后将其粘贴到终端中,然后按Enter键运行它。
技术细节:
Listen在Linux上默认使用inotify监视目录中的更改。遇到可以监视的文件数量受到系统限制的情况并不少见。例如,Ubuntu Lucid(64位)的inotify限制设置为8192。
您可以通过执行以下操作来获取当前的inotify文件监视限制:
$ cat /proc/sys/fs/inotify/max_user_watches
如果此限制不足以监视目录中的所有文件,则必须增加该限制以使“侦听”正常工作。
您可以使用以下方法临时设置新的限制:
$ sudo sysctl fs.inotify.max_user_watches=524288
$ sudo sysctl -p
如果您想将限额设为永久性,请使用:
$ echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
$ sudo sysctl -p
如果Listen不断抱怨,您可能还需要注意max_queued_events和max_user_instances的值。
来源:https://github.com/guard/listen/wiki/Increasing-the-amount-of-inotify-watchers
答案 1 :(得分:2)
我通过编辑/etc/sysctl.conf解决了这个问题。到我添加的文件
fs.inotify.max_user_watches=100000
答案 2 :(得分:1)
在Linux Mint上, 运行此命令,一切顺利
echo fs.inotify.max_user_watches=524288 | sudo tee /etc/sysctl.d/40-max-user-watches.conf && sudo sysctl --system
答案 3 :(得分:0)
增加手表
其他访问 https://github.com/guard/listen/wiki/Increasing-the-amount-of-inotify-watchers