Nodemon崩溃并显示等待文件更改

时间:2018-07-25 14:38:56

标签: javascript node.js nodemon

我正在使用Nodemon 1.18.3版本和Express版本4。 直接运行nodemon命令后,出现以下错误:

events.js:165
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE :::3000
    at Server.setupListenHandle [as _listen2] (net.js:1346:14)
    at listenInCluster (net.js:1387:12)
    at Server.listen (net.js:1475:7)
    at Function.app.listen (/home/rishabh/Documents/my_projects/getting_MEAN/loc8r/node_modules/express/lib/application.js:531:24)
    at Object.<anonymous> (/home/rishabh/Documents/my_projects/getting_MEAN/loc8r/bin/www:7:18)
    at Module._compile (internal/modules/cjs/loader.js:654:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:665:10)
    at Module.load (internal/modules/cjs/loader.js:566:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:506:12)
    at Function.Module._load (internal/modules/cjs/loader.js:498:3)
Emitted 'error' event at:
    at emitErrorNT (net.js:1366:8)
    at process._tickCallback (internal/process/next_tick.js:178:19)
    at Function.Module.runMain (internal/modules/cjs/loader.js:697:11)
    at startup (internal/bootstrap/node.js:201:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:516:3)
[nodemon] app crashed - waiting for file changes before starting...

Nodemon崩溃,并继续等待文件更改。

2 个答案:

答案 0 :(得分:2)

该错误表明端口3000已在使用中。

您需要使用其他端口,可以使用以下命令,

nodemon ./YOUR_SCRIPT_NAME.js localhost 3005

希望这会有所帮助!

答案 1 :(得分:2)

之所以发生这种情况,是因为nodemon无法监视此issue on github中提到的文件系统。

基本上,有一个inotify监视程序,nodemon用来监视您在代码中所做的更改。

您可以通过增加最大监视程序的数量来解决此问题,然后重新启动计算机以应用更改:

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

也提到了here

或者您也可以在端点文件中添加以下代码:

process.on('SIGUSR2', () => { process.exit(0); });