Nodemon内部监视失败错误?

时间:2017-10-25 16:57:35

标签: node.js ubuntu-16.04 nodemon

我不知道发生了什么,但突然我的Nodemon开始显示错误。

nikhil@nikhil-Lenovo-Z50-70:~/Desktop/dominos$ nodemon server.js
[nodemon] 1.12.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node server.js`
[nodemon] Internal watch failed: watch /home/nikhil/Desktop/dominos 
ENOSPC

即便如此,我的程序运行正常。但是,当我关闭此project1并在同一端口上运行另一个project2时,会发生此错误

Error: listen EADDRINUSE :::3000
at Object.exports._errnoException (util.js:1024:11)
at exports._exceptionWithHostPort (util.js:1047:20)
at Server.setupListenHandle [as _listen2] (net.js:1319:14)
at listenInCluster (net.js:1367:12)
at Server.listen (net.js:1467:7)
at Object.<anonymous> (/home/nikhil/Desktop/dominos/server.js:533:8)
at Module._compile (module.js:569:30)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:503:32)
at tryModuleLoad (module.js:466:12)
at Function.Module._load (module.js:458:3)
at Function.Module.runMain (module.js:605:10)
at startup (bootstrap_node.js:158:16)
at bootstrap_node.js:575:3

然后我的旧项目1将保持打开状态,直到我手动终止进程才能启动新的project2。

知道为什么会这样吗?

3 个答案:

答案 0 :(得分:6)

假设您使用的是linux,问题可能是您有太多开放观察者。 运行此命令:

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

再试一次。

信用:this answer

答案 1 :(得分:1)

发生此问题是因为已经有另一个进程或终端使用您的相同端口

使用以下命令杀死所有节点

killall node

使用以下命令启动nodemon

nodemon server.js

答案 2 :(得分:0)

我有同样的错误。节点工作,但不是 nodemon。我所做的只是:

npm install -g nodemon

它奏效了?