ng serve --open报告端口4200在未使用时已经在使用中

时间:2019-08-19 13:43:04

标签: angular angular-cli

当我尝试使用命令运行我的角度应用程序

ng服务-o-端口4200

它显示类似这样的错误

端口4200已在使用中,请尝试使用其他端口

但是我检查了一下,使用此命令在该端口中没有正在运行的进程

sudo lsof -i -P -n | grep LISTEN

我也尝试了不同的端口,但是结果相同,表明该端口也在使用中。

当我尝试动态端口选择命令(--port 0)时,应用程序运行。但是我必须指定端口号。

我正在使用
节点版本-8.12.0
角版本-5.2.6
Angular CLI版本-1.7.1

4 个答案:

答案 0 :(得分:3)

如果收到此错误:‘端口4200已在使用中。使用“ –port”指定其他端口”,您可能已经离开Angular开发环境而没有关闭node.js网络服务器的端口。

您可以在不重新启动计算机或更改应用程序端口的情况下关闭它。

第1步:找到连接的PID

netstat -ano | findstr :yourPortNumber

示例及其输出:

netstat -ano | findstr :4200

,输出为:

TCP   127.0.0.1:4200    0.0.0.0:0    LISTENING    10764

步骤2:使用其PID终止进程

tskill yourPID

示例:

tskill 10764

第3步:重新启动服务器

您应该能够运行它(使用ng serve)

第4步:正确停止服务器

现在不要忘记通过使用Ctrl + C并键入Y来正确关闭服务器:

就这样。

答案 1 :(得分:1)

遇到同样的问题,它是Portfinder的错误版本。在修复此问题之前,请直接在devDependences中指定:

"portfinder": "1.0.20",

答案 2 :(得分:0)

尝试删除--port 4200。默认情况下,角度cli将在端口4200中为您的角度应用提供服务。

答案 3 :(得分:0)

奇怪的是,您的服务器在某处运行。例如,当您退出终端窗口而不停止服务器时,可能会发生这种情况。打开任务管理器,然后终止所有Node进程。那应该清除一切。重新启动计算机应完成相同的操作。