我正在学习angular 2,这是我第一次使用angular CLI项目创建一个沙盒项目。
我能够运行命令“ng serve”,它工作得很好。我想让它停止运行,所以我运行了“控制Z”。
当我再次尝试运行“ng-serve”命令时,它提示我“端口4200已被使用”。
我运行“PS”来获得PID列表,并杀死了angular-cli的PID,然后再次运行“ng-serve”,它仍然给出相同的端口使用错误。
我正在学习angular 2,这是我第一次使用angular CLI项目创建一个沙盒项目。
我能够运行命令“ng serve”,它工作得很好。我想让它停止运行,所以我运行了“控制Z”。
当我再次尝试运行“ng-serve”命令时,它提示我“端口4200已被使用”。
我运行“PS”来获得PID列表,并杀死了angular-cli的PID,然后再次运行“ng-serve”,它仍然给出相同的端口使用错误。
当前回答
在Mac OS X上,您需要执行以下命令:
Sudo lsof -t -i tcp:4200 | xargs kill -9
记住,你需要用Command+C关闭Angular的web服务器。
其他回答
在Mac OS X上,您需要执行以下命令:
Sudo lsof -t -i tcp:4200 | xargs kill -9
记住,你需要用Command+C关闭Angular的web服务器。
如果你正在使用VSCode,你可以选择杀死终端并添加一个新终端。关闭选项卡并打开一个新选项卡。这对我很管用。
编辑: 使用ctrl+c并按y。在没有终止终端的情况下,您可以继续。 如果你想打开一个visual studio的新实例并运行一个不同的应用程序,你可以使用ng serve——port 4401。
以管理员身份打开cmd.exe,
然后找到4200端口的PID
netstat -ano | findstr :4200
这里我有3个PID:
红色的来自“ng-serve”(127.0.0.1:4200) 绿色的来自"your browser"
只杀死4200端口(杀死红色PID):
taskkill /PID 15940 /F
注意:杀死绿色只会导致你的浏览器被强制关闭。
现在你可以使用ng-serve在4200端口上启动angular应用
附加内容:
一行:在寻找优化的方法之后,下面是这个答案的一行命令:(特别感谢:Josep Alsina提供的提示)
for /f "tokens=5" %a in ('netstat -ano ^| find "4200" ^| find "LISTENING"') do taskkill /f /pid %a
而不是杀死整个进程或使用ctrl+z,你可以简单地使用ctrl+c来停止服务器,并且可以轻松地使用ng serve命令而不会出现任何错误,或者如果你想在不同的端口上运行,只需使用这个命令ng serve——port portno(例如:ng serve——port 4201)。
每次我必须关闭端口时,我都面临着同样的问题。
我尝试了。/node_modules/.bin/ng serve——proxy-config proxy.conf.json——host 0.0.0.0而不是npm start和它的工作