Angular &引用;端口4200已在使用中”;运行ng serve命令时
我正在学习angular 2,这是我第一次使用angular CLI项目创建沙盒项目 我能够运行“ng serve”命令,它非常有效。我想阻止它运行,所以我运行了“Control Z” 当我再次尝试运行“ng serve”命令时,它会告诉我“端口4200已在使用中。” 我运行了“PS”来获取PID列表,并终止了angular cli的PID,再次运行了“ng serve”,但仍然出现了相同的端口使用错误Angular &引用;端口4200已在使用中”;运行ng serve命令时,angular,Angular,我正在学习angular 2,这是我第一次使用angular CLI项目创建沙盒项目 我能够运行“ng serve”命令,它非常有效。我想阻止它运行,所以我运行了“Control Z” 当我再次尝试运行“ng serve”命令时,它会告诉我“端口4200已在使用中。” 我运行了“PS”来获取PID列表,并终止了angular cli的PID,再次运行了“ng serve”,但仍然出现了相同的端口使用错误 netstat -anp | grep ":4200" netstat -a -n -o
netstat -anp | grep ":4200"
netstat -a -n -o | findStr "4200"`
这将告诉你谁拥有这个端口。这是我用来阻止4200端口的进程的 对于linux用户:
sudo kill $(sudo lsof -t -i:4200)
您也可以尝试以下方法:
sudo kill `sudo lsof -t -i:4200`
对于windows用户:
sudo kill $(sudo lsof -t -i:4200)
端口号4200已在使用中。以管理员身份打开cmd。在cmd中键入以下命令:
netstat -a -n -o
taskkill -f /pid 18932
然后,右键单击终端并单击查找,找到端口号为4200的端口,在“查找内容”中输入4200,然后单击“查找下一步”:
假设您发现端口号4200由pid 18932使用。在cmd中键入以下命令:
netstat -a -n -o
taskkill -f /pid 18932
对于UNIX:
alias ngf='kill -9 $(lsof -t -i:4200);ng serve'
现在从项目文件夹在终端中运行ngf(而不是ng serve)。这将终止所有使用端口4200的进程,并运行Angular项目。而不是ctrl+Z,
您必须运行stop ctrl+C我也遇到了相同的错误消息,所以我尝试了ng serve--port 12012,效果很好。以
管理员的身份打开您的cmd.exe
然后找到端口4200的PID
netstat -ano | findstr :4200
这里我有3个PID:
- 红色的一个来自“ng发球”(127.0.0.1:4200),它
倾听
- 绿色的来自“你的浏览器”
仅关闭端口4200(关闭红色PID):
注意:杀死绿色只会导致浏览器被强制关闭
现在,您可以在同一端口4200上执行“ng serve”以启动angular应用程序
其他内容:
One-liner:在寻找了一种优化方法之后,下面是这个答案的One-liner命令:(特别感谢:获得此提示)
在Mac OS X上,您需要以下命令:
lsof -t -i tcp:4200 | xargs kill -9
sudo lsof-t-i tcp:4200 | xargs kill-9
请记住,您需要使用Command+C杀死Angular的web服务器
ng serve --port 4201 --live-reload-port 4200
并使用localhost:4201进行访问
这应该是一个临时解决办法
或
尝试使用
lsof-i:4200
并使用
sudo kill-9
我们可以通过以下命令强制杀死端口
kill -2 $(lsof -t -i:4200)
当您使用Ctrl+Z
时,您将暂停正在运行的任务,但不会终止它。您可以稍后使用命令fg
继续执行任务。
如果要退出ng serve
,则应改为使用Ctrl+C
,这也将释放4200端口。您也可以尝试使用此操作在visual studio代码中运行应用程序:
ng serve --open --port 4201
您可以提供任何端口号。最简单的单行命令:
sudo fuser -k 4200/tcp
对于Windows:
打开命令提示符并
类型:netstat-a-o-n
找到要终止的进程的PID
类型:taskkill/F/PID 16876
这一个16876-是我想要终止的进程的PID-在这种情况下,进程是4200-检查附件。您可以给出任何端口号
现在,键入:ng serve
在同一端口4200启动angular应用程序它说我们已经在运行端口号为4200的服务,请使用另一个端口而不是4200。下面的命令是解决问题的
ng服务——端口4300
不必终止整个过程或使用ctrl+z
,您只需使用ctrl+c
停止服务器,并可以愉快地使用ng serve命令
,而不会出现任何错误
,或者如果您想在不同的端口上运行,只需使用此命令ng serve--port port portno(例如:ng serve--port 4201)
如果是Linux操作系统,则可以使用fuser-k 4200/tcp来终止进程并关闭用于在该端口上运行应用程序的终端。使用此命令终止ng:
pkill -9 ng
ng服务--端口
您应该尝试在给定端口上运行上述命令。只要重新启动您正在使用的IDE,它就会工作。如果您使用的是VSCode,您可以选择终止终端并添加新的终端。关闭选项卡并打开新选项卡。这对我有用
编辑:
使用ctrl+c并按y键。在没有杀戮终端的情况下,您可以继续。
如果要打开visual studio的新实例并运行其他应用程序,可以使用ng serve--端口4401。总之,有多种解决方案:
1)通过使用另一个端口定义端口号
ng serve --open --port 4201
2) 通过终止进程
ctrl + c // for kill
Close all node terminal which is related for running the app.
3) 类型
netstat-a-n-o
在命令提示符中
然后找到相关的端口PID并通过
taskkill/F/PID(PID编号)
4) 键入netstat-ano | findstr:4200
获取包含端口号的外部地址PID,然后通过
taskkill/PID(PID编号)/F
使用ctrl+z将程序置于后台。
在Linux上,您可以使用以下命令将会话恢复到前台:
lsof -t -i tcp:4200 | xargs kill -9
fg ng发球
您不需要终止进程。我正在分享这一点,因为在我的mac上,fowling两个命令没有完成这项工作:
sudo kill $(sudo lsof -t -i:4200)
sudo kill `sudo lsof -t -i:4200`
下面的一个是,但是如果您在视觉代码中使用集成终端,请尝试使用您的机器终端并添加fowling命令:
lsof -t -i tcp:4200 | xargs kill -9
对于Ubndu 18.04
sudo lsof-t-i tcp:3000 | xargs kill-9
它发生在端口未成功终止时
所以这个命令会终止它
ng serve --port 4201
sudo kill $(sudo lsof -t -i:4200) Or
sudo kill `sudo lsof -t -i:4200` Or
sudo lsof -t -i tcp:4200 | xargs kill -9
netstat -a -n -o | findStr "4200"`
taskkill -f /pid 11128