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

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

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

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


当前回答

对我来说,这个命令在Ubuntu中是有效的

sudo fuser -k 4200/tcp for killing other ports

其他回答

如果你同时在CMD和IDE中编译angular JS代码,就会出现这个问题。在CMD中,当你在IDE中修改angular JS代码时,你的angular JS代码会自动编译,然后你的IDE想要占用相同的端口,即4200,这个端口已经被CMD占用了 因此,这个问题有一个简单的解决方案,在IDE中编译代码时关闭cmd。

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

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

它说我们已经在运行端口为4200的服务,请使用另一个端口而不是4200。下面的命令就是解决问题

Ng serve——端口4300

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

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

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

要停止在windows中运行的所有本地端口,只使用这个简单的注释,而不是使用netstat单独搜索pid,

它会找到所有的pid并停止当前正在运行的本地端口,

taskkill /im node.exe /f