节点js退出状态8,错误代码0在mac上运行

按照这个指南我有一个错误,但不知道是什么问题。

我设法得到第2步的结束没有问题,我重新启动服务器npm start 。 然后,我对玉文件进行了一番揣测,又跑了起来,呻吟了一阵,把原木放在很less的地方。 在发布之前,我删除了整个文件夹并重新开始,但是现在npm服务器甚至不会使用express创build的基本文件。

当我运行: npm install -g express就像本地用户一样,我得到的错误告诉我以root身份运行。 所以express被安装为root,但是npm install -g express-generator作为本地用户运行良好。

因此,安装了快速生成器和快速生成器后,现在可以创build一个快速项目(以本地用户身份login,而不是root,项目名称… noders):

 express noders 

现在npm安装得到所有的依赖关系:

 npm install 

所以理论上我现在应该能够启动节点js服务器…

 npm start 

但结果是:

 Janines-MacBook-Pro:noders janinenitz$ npm start > noders@0.0.0 start /Users/janinenitz/node/noders > node ./bin/www events.js:72 throw er; // Unhandled 'error' event ^ Error: listen EADDRINUSE at errnoException (net.js:905:11) at Server._listen2 (net.js:1043:14) at listen (net.js:1065:10) at Server.listen (net.js:1139:5) at Function.app.listen (/Users/janinenitz/node/noders/node_modules/express/lib/application.js:556:24) at Object.<anonymous> (/Users/janinenitz/node/noders/bin/www:7:18) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) npm ERR! noders@0.0.0 start: `node ./bin/www` npm ERR! Exit status 8 npm ERR! npm ERR! Failed at the noders@0.0.0 start script. npm ERR! This is most likely a problem with the noders package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node ./bin/www npm ERR! You can get their info via: npm ERR! npm owner ls noders npm ERR! There is likely additional logging output above. npm ERR! System Darwin 14.0.0 npm ERR! command "node" "/usr/local/bin/npm" "start" npm ERR! cwd /Users/janinenitz/node/noders npm ERR! node -v v0.10.35 npm ERR! npm -v 1.4.28 npm ERR! code ELIFECYCLE npm ERR! npm ERR! Additional logging details can be found in: npm ERR! /Users/janinenitz/node/noders/npm-debug.log npm ERR! not ok code 0 

和日志文件:

 0 info it worked if it ends with ok 1 verbose cli [ 'node', '/usr/local/bin/npm', 'start' ] 2 info using npm@1.4.28 3 info using node@v0.10.35 4 verbose run-script [ 'prestart', 'start', 'poststart' ] 5 info prestart noders@0.0.0 6 info start noders@0.0.0 7 verbose unsafe-perm in lifecycle true 8 info noders@0.0.0 Failed to exec start script 9 error noders@0.0.0 start: `node ./bin/www` 9 error Exit status 8 10 error Failed at the noders@0.0.0 start script. 10 error This is most likely a problem with the noders package, 10 error not with npm itself. 10 error Tell the author that this fails on your system: 10 error node ./bin/www 10 error You can get their info via: 10 error npm owner ls noders 10 error There is likely additional logging output above. 11 error System Darwin 14.0.0 12 error command "node" "/usr/local/bin/npm" "start" 13 error cwd /Users/janinenitz/node/noders 14 error node -v v0.10.35 15 error npm -v 1.4.28 16 error code ELIFECYCLE 17 verbose exit [ 1, true ] 

读了几个其他职位后,我停止了节点服务器npm stop再次开始希望在端口号没有冲突,但我得到相同的。

当我作为根运行,我得到完全相同的结果。

有没有人有任何想法? 每个站点安装节点生猪的端口号,需要删除或什么?


当运行lsof -i这是结果(closures网页浏览器之后):

 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME UserEvent 201 janinenitz 4u IPv4 0x45000000008e2c77 0t0 UDP *:* SystemUIS 209 janinenitz 23u IPv4 0x45000000478e706f 0t0 UDP *:53884 SystemUIS 209 janinenitz 25u IPv4 0x00000000478e6e17 0t0 UDP *:* sharingd 221 janinenitz 12u IPv4 0x450000004711d70f 0t0 UDP *:* SpotifyWe 274 janinenitz 6u IPv4 0x4500000048000000 0t0 TCP localhost:4370 (LISTEN) SpotifyWe 274 janinenitz 7u IPv4 0x456d000048b19947 0t0 TCP localhost:4380 (LISTEN) WiFiAgent 278 janinenitz 16u IPv4 0x4560000047000000 0t0 UDP *:* 

没有什么东西在端口3000监听(这是我以前从上面提到的教程得到一个defult页面)的任何迹象我重新启动npm,仍然得到上述相同的结果:

 events.js:72 throw er; // Unhandled 'error' event ^ Error: listen EADDRINUSE at errnoException (net.js:905:11) at Server._listen2 (net.js:1043:14) at listen (net.js:1065:10) at Server.listen (net.js:1139:5) at Function.app.listen (/Users/janinenitz/node/noders/node_modules/express/lib/application.js:556:24) at Object.<anonymous> (/Users/janinenitz/node/noders/bin/www:7:18) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) ... etc etc 

我也尝试告诉app.js听一个随机的端口号: app.listen(31001); 但仍然没有喜乐:S

是否有机会使用npm install构build和安装的以前的应用程序现在与这个应用程序有冲突? 有没有官方的方式“卸载”nodeJs应用程序?

干杯,J

Error: listen EADDRINUSE意味着端口被采取。 你在指定的端口上运行另一个节点应用程序或某个服务器吗? 我的猜测是你是。

如果你想杀死正在尝试连接的端口的进程,并在terminal运行中运行linux / mac:

 lsof -i tcp:{DESIGNATED_PORT} // Example lsof -i tcp:8080 // Yours will need to be something like so 

你会看到这样的输出:

 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME node 2940 sethkrasnianski 12u IPv4 0xdce46e6699332713 0t0 TCP *:vrpn (LISTEN) 

…然后抓住PID#并运行kill -9 {PID_NUMBER}

否则,你应该只编辑你的app.js文件(或者任何入口文件被命名),并将你的快递服务器分配给一个新的,模糊的端口。