我正在学习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”,它仍然给出相同的端口使用错误。
当前回答
可以在.angular-cli文件中更改端口。例如:
"defaults": {
"styleExt": "css",
"component": {},
"serve": {
"port": 4205
}
}
另外,有必要在package.json中添加以下内容:
"ng": "ng",
"start": "ng serve"
其他回答
当您使用Ctrl+Z时,您将挂起正在运行的任务,而不是终止它。后续可以使用fg命令恢复任务。 如果你想退出ng serve,你应该使用Ctrl+C来代替,这也会释放4200端口。
netstat -anp | grep ":4200"
这会告诉你谁得到了端口。
在我的案例中,以上提到的方法都不起作用。
Ubuntu 18.04版本
下面的命令起作用了。
sudo kill -9 $(lsof -i tcp:4200 -t)
Ng serve -port 122345对我来说工作正常。
用于Ubndu 18.04 Sudo lsof -t -i tcp:3000 | xargs kill -9
当港口终止不成功时发生 因此,这个命令将终止它4200或3000或3300任意