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

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

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

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


当前回答

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

ng serve --port 4210

其他回答

Windows:

打开命令提示符和

类型:netstat -a -o -n

找到要终止的进程的PID。

类型:taskkill /F /PID 16876

这个16876 -是我想要杀死的进程的PID -在这种情况下,进程是4200 -检查所附文件。你可以给出任何端口号。

现在,输入:ng可以在相同的端口4200上启动angular应用

总之,解决方案不止一种: 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 number)/F

我在这方面遇到了很大的麻烦,我甚至尝试了许多其他端口,但一无所获。

我安装了npm typescript@2.8,它解决了这个问题。由于某种原因,typescript版本导致冲突,使用yarn或ng serve无法工作。

希望这对其他有同样问题的人有用。

如果你已经安装了npm,如果你正在使用angular,我假设你已经安装了,那么你可以简单地运行npx kill-port 4200。就是这样。

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

sudo fuser -k 4200/tcp for killing other ports