我正在学习angular 2,这是我第一次使用angular CLI项目创建一个沙盒项目。

我能够运行命令“ng serve”,它工作得很好。我想让它停止运行,所以我运行了“控制Z”。

当我再次尝试运行“ng-serve”命令时,它提示我“端口4200已被使用”。

我运行“PS”来获得PID列表,并杀死了angular-cli的PID,然后再次运行“ng-serve”,它仍然给出相同的端口使用错误。


当前回答

ng serve --open 

分配一个本地主机来承载项目。在同一个目录下运行相同的命令时,系统会在端口已经被使用的地方分配localhost:port。要覆盖这个问题,可以很容易地运行以下命令:

ng serve --port

这将为项目分配一个新的端口,而不会干扰当前的本地主机端口。

其他回答

最简单的一行命令:

 sudo fuser -k 4200/tcp

在linux mint 17上,这是工作的。

Kill -9 $(lsof -t -i:4200)

似乎另一个程序正在使用您的默认端口4200。好消息是,4200以上的端口通常是免费的。再选一个吧。例如:

ng serve --port 4210

唯一对我有用的是重启我的系统/设备…

使用Webstorm IDE由JetBrains。

在Mac OS X上,您需要执行以下命令:

Sudo lsof -t -i tcp:4200 | xargs kill -9

记住,你需要用Command+C关闭Angular的web服务器。