【问题标题】:Getting an error while running "nodemon app" comannd运行“nodemon app”命令时出错
【发布时间】:2020-12-08 10:28:32
【问题描述】:

我已经下载了 express 包和 nodemon,我创建了一个服务器并渲染了我所有的 ejs 文件。运行“nodemon app”命令时出现此错误,具体问题是什么? :

PS C:\Users\user\Desktop\my port> nodemon app
[nodemon] 2.0.4
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,mjs,json
[nodemon] starting `node app.js`
events.js:291
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE: address already in use :::3000
    at Server.setupListenHandle [as _listen2] (net.js:1316:16)
    at listenInCluster (net.js:1364:12)
    at Server.listen (net.js:1450:7)
    at Function.listen (C:\Users\user\Desktop\my port\node_modules\express\lib\application.js:618:24)
    at Object.<anonymous> (C:\Users\user\Desktop\my port\app.js:16:5)
    at Module._compile (internal/modules/cjs/loader.js:1251:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1272:10)
    at Module.load (internal/modules/cjs/loader.js:1100:32)
    at Function.Module._load (internal/modules/cjs/loader.js:962:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
Emitted 'error' event on Server instance at:
    at emitErrorNT (net.js:1343:8)
    at processTicksAndRejections (internal/process/task_queues.js:80:21) {
  code: 'EADDRINUSE',
  errno: -4091,
  syscall: 'listen',
  address: '::',
  port: 3000
}
[nodemon] app crashed - waiting for file changes before starting...

【问题讨论】:

  • 3000 端口已经被其他东西占用了。

标签: node.js nodemon


【解决方案1】:

您的系统已经在端口 3000 上运行了一些东西。

你可以做 2,

  1. 杀死在 3000 上运行的进程
  2. 或在您当前的应用程序中使用不同的端口(如 3001、5000 等)

【讨论】:

    【解决方案2】:

    你好用这个直接杀死进程;

    netstat -ano | findstr :XXXX
    

    XXXX

    taskkill /F /PID XXXX
    

    XXXX

    【讨论】:

      【解决方案3】:

      在命令提示符下输入

      netstat -ano | findstr :XXXX  <-THIS IS THE PORT NUMBER YOU used
      

      它会给你这样的东西

      TCP    0.0.0.0:8080 ||  0.0.0.0:0  || LISTENING | tttt
      
      TCP    [::]:8080  ||  [::]:0  ||  LISTENING || tttt<--thiss is the number you needed
      

      然后在命令提示符下输入这个

      taskkill /PID tttt /F  <--then enter
      
      result will be something like -->
      

      PID为tttt的进程已终止。

      【讨论】:

        猜你喜欢
        • 2020-09-22
        • 2021-09-16
        • 2014-08-01
        • 2016-11-11
        • 2020-04-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多