收到错误 - 在Windows机器上收听EADDRINUSE ::: 3000

时间:2017-01-18 10:25:29

标签: node.js windows express terminal port

我搜索了很多,我知道有一些进程或服务器在端口3000上运行,但我怎么能阻止它并在端口3000上运行一个新的快速http服务器。几乎没有答案告诉它对于Unix环境..但如何使用cmd终端在Windows环境中释放端口。 使用PID关闭任务对我来说也不起作用。 提前致谢

5 个答案:

答案 0 :(得分:16)

打开命令提示符并键入以下内容

netstat -a -o -n

按端口向下运行列表,直到找到端口3000,您将看到进程ID。然后运行

taskkill /F /PID (yourprocessID)

还有另一种简单的方法可以在一个命令中执行此操作

FOR /F "tokens=4 delims= " %%P IN ('netstat -a -n -o ^| findstr :3000') DO TaskKill.exe /PID %%P

如果您使用Windows 7 U可能需要tokens=5,请谨慎使用不同操作系统的令牌。

答案 1 :(得分:12)

  • 在Windows 10中,打开任务管理器并转到Details标签。
  • 你会发现node.exe正在运行。
  • 结束任务和您的端口将被释放。

答案 2 :(得分:1)

如果您在Windows中使用VS Code,则需要先 KILL 杀死Node-App的所有先前实例

然后,在VS Code中打开BASH终端并运行以下命令

cmd "/C TASKKILL /IM node.exe /F"

答案 3 :(得分:0)

EADDRINUSE意味着已经有另一个正在运行的进程正在侦听您的节点应用程序想要使用的端口并将其保留。您之前最有可能运行该应用程序,但它尚未正确终止并仍然保留在该端口上。 所以首先我们终止已经运行的一个,然后只启动另一个新的服务器

答案 4 :(得分:0)

那是因为端口3000已经忙于收听另一个进程。 所以只需转到任务管理器并结束该过程/删除所有节点js相关进程。