我正在学习GraphQL,并且在GraphQL操作中使用棱镜绑定。当我启动我的Node.js服务器时,我面临这个nodemon错误,它给了我一个由graphql-cli自动生成的模式文件的路径。这个错误是关于什么的?

错误:

Internal watch failed: ENOSPC: System limit for number of file watchers reached, watch '/media/ rehans -sattar/Development/All projects/GrpahQl/graph-ql-course/graphql-prisma/src/generated


当前回答

如果您使用的是Linux,那么您的项目将达到系统文件监视器的限制

要解决这个问题,请在您的终端上尝试:

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

其他回答

当我在Ubuntu机器上使用Visual Studio Code时,有时会遇到这个问题。

在我的情况下,下面的解决方法会有所帮助:

停止监视器,关闭Visual Studio Code,启动监视器,然后再次打开Visual Studio Code。

我也有同样的问题。然而,我的是来自Webpack的。值得庆幸的是,他们的网站上有一个很好的解决方案:

对于某些系统,查看许多文件可能会导致大量CPU或内存使用。可以使用正则表达式排除像node_modules这样的大文件夹:

文件webpack.config.js

module.exports = {
  watchOptions: {
    ignored: /node_modules/
  }
};

在我的例子中,当我在Linux服务器上执行nodemon命令时,我打开了Visual Studio Code (SSH到服务器)。所以根据Juri Sinitson的回答,我只是关闭Visual Studio Code并再次运行nodemon命令。这很有效。

我的非恶魔命令:

Nodemon server.js通过NPM启动

我认为这里给出的大多数答案都是正确的,但是使用systemctl命令重新启动我的服务解决了我的问题。检查下面的命令:

sudo systemctl restart systemd-sysctl.service

在Linux上,我实际上是用sudo运行的。 Sudo NPM启动