首页 > 解决方案 > Nodemon 在尝试重新启动 EEADINUSE 错误之前没有杀死节点

问题描述

这是我的第一个 node.js 服务器。我已经创建了 server.js 并且它正在运行。我安装了 nodemon 并让它运行,我也永远安装了它们并让它们一起运行。

每次我对代码进行更改并且 nodemon 运行时,它都会收到 EADDRINUSE: 错误。

我已经做好了

lsof -i tcp:3000

我得到

节点 13837 p*********m 19u IPv6 161703311 0t0 TCP *:hbci (LISTEN)

所以我使用 -kill - 9 PID 杀死这个 PID

但是它只是再次启动,我一遍又一遍地收到错误。

我究竟做错了什么 :(

我只是想:

编辑:

我想我发现的是 nodemon 在重新启动之前没有杀死服务。

我发现了一个论坛帖子,它建议这样做:

nodemon qudaserver.js --signal SIGTERM

然而这也行不通

更改代码时出错

任何其他建议将不胜感激。

我的 package.json 代码:

{
  "name": "qudaapi",
  "version": "1.0.0",
  "description": "NodeJSAPI",
  "main": "qudaserver.js",
  "scripts": {},
  "author": "GAngel",
  "license": "ISC",
  "dependencies": {
    "bcryptjs": "^2.4.3",
    "dotenv": "^8.2.0",
    "express": "^4.17.1",
    "jsonwebtoken": "^8.5.1",
    "morgan": "^1.10.0",
    "mysql": "^2.18.1"
  }
}

我的 qudaserver.js 代码:

    const http = require('http');
const app = require('./app');


const port = process.env.port || 3000;
const server = http.createServer(app);

server.listen(port);

标签: node.jsapinodemonforever

解决方案


推荐阅读