npm 运行成功但终端进程停止(系统限制)

Posted

技术标签:

【中文标题】npm 运行成功但终端进程停止(系统限制)【英文标题】:npm runs successfully but terminal process stopped (system limit) 【发布时间】:2020-12-24 15:06:24 【问题描述】:

我正在研究 Vue js,当我尝试运行 npm run watch 时,它说 Build successfully 但接下来由于某些原因终端进程停止,我收到如下错误:

来自 chokidar (/var/www/html/rankUp/node_modules/axios) 的错误:错误:ENOSPC:已达到文件观察者数量的系统限制,请观看“/var/www/html/rankUp/node_modules/axios”

事实上,几分钟前它运行良好(我没有对代码进行任何更改),但是当我重新启动我的电脑并重新运行npm run watch 时,我明白了!顺便说一句,我应该说注意到axios 的奇怪动作我试图用axios 处理api 数据,接下来当我评论整个axios 代码时,我看到它仍然有效,我怎么知道?也许这就是那个错误的原因?

有人有想法吗?为什么会这样?

【问题讨论】:

【参考方案1】:

如果您在尝试执行 npm start 时遇到此错误,那是因为您的 max_user_watches 已达到最大数量。只需运行以下命令即可增加max_user_watches

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

然后你可以再次运行 npm start

【讨论】:

你能解释一下吗?为什么会发生,这真的是个好主意和安全吗?增加max_user_watches ? 阅读此处github.com/guard/listen/wiki/… 它只是达到了系统的文件观察者限制。别担心。你也可以读到flaviocopes.com/vue-watchers/…。 谢谢!我读过,我运行了你的代码,但它仍然返回相同的错误。你确定你的代码真的有效吗? 是的,我重新安装了节点模块,现在它可以工作了。我认为你的代码有效。但重新安装模块后生效。谢谢!

以上是关于npm 运行成功但终端进程停止(系统限制)的主要内容,如果未能解决你的问题,请参考以下文章

PM2相关基础知识

守护进程

sh 限制npm进程的内存

[Erlang]各种系统限制总结

守护进程详细总结

守护进程