我正在学习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”,它仍然给出相同的端口使用错误。
当前回答
我在这方面遇到了很大的麻烦,我甚至尝试了许多其他端口,但一无所获。
我安装了npm typescript@2.8,它解决了这个问题。由于某种原因,typescript版本导致冲突,使用yarn或ng serve无法工作。
希望这对其他有同样问题的人有用。
其他回答
netstat -anp | grep ":4200"
这会告诉你谁得到了端口。
ng serve --port 4201 --live-reload-port 4200
并使用localhost:4201访问
这应该是一个临时的解决方案。
or
尝试使用列出端口使用情况 lsof我:4200 并手动杀死它使用 sudo kill -9 <进程PID using port 4200>
当您使用Ctrl+Z时,您将挂起正在运行的任务,而不是终止它。后续可以使用fg命令恢复任务。 如果你想退出ng serve,你应该使用Ctrl+C来代替,这也会释放4200端口。
如果是Linux操作系统,可以使用fuser -k 4200/tcp
用ctrl + z你把程序放在后台。 在Linux上,你可以用下面的命令让会话回到前台:
发球
您不需要终止进程。