Port “already in use” after each server restart

筅森魡賤 提交于 2020-01-25 09:19:24

问题


Searching for help with peculiar issue. Each time I stop and restart the server, I get this message:

Jim@Jim-PC MINGW64 ~/nodeProjects/express-locallibrary-tutorial
$ npm start

> express-locallibrary-tutorial@0.0.0 start C:\Users\Jim\nodeProjects\express-locallibrary-tutorial
> node ./bin/www

Port 3300 is already in use
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! express-locallibrary-tutorial@0.0.0 start: `node ./bin/www`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the express-locallibrary-tutorial@0.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Jim\AppData\Roaming\npm-cache\_logs\2017-09-19T17_39_10_578Z-debug.log

I change the port to 3301, it works. I stop and restart the server and receive an error that 3301 is already in use. I change the port to 3302 and it works. Stop and start and get error that 3302 is already in use.

I stopped using nodemon several days ago for the same issue on another application, and it stopped. For this application, I installed nodemon, but not globally, ran into issues and uninstalled it. But the issue persists.

I would appreciate any ideas on a solution if anyone has encountered this.


回答1:


Here we are in 2020 and this issue seems to not have been fully solved.

I'm writing this workaround for nodemon here, because at the present time this is the first result on google for the query nodemon The port or ip 0.0.0.0 is already in use.

  1. Install the kill-port node package as a dev dependency: npm install kill-port --save-dev
  2. Create a nodemon.json file in the root of your project, containing (replace 18000 with your port, eg 3000):

    { "events": { "restart": "kill-port 18000", "crash": "kill-port 18000" }, "delay": "1500" }

  3. Then, in your package.json file, have something like this:

    "scripts": { "start-dev": "nodemon app.js", },

Then start your app in dev mode with npm run start-dev



来源:https://stackoverflow.com/questions/46306871/port-already-in-use-after-each-server-restart

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!