"端口4200已经在使用"运行ng serve命令时

时间:2016-08-23 03:13:25

标签: angular

我正在学习角度2,并且我第一次使用角度CLI项目来创建沙箱项目。

我能够运行命令" ng serve"它很棒。我想阻止它运行所以我跑了"控制Z"。

当我尝试运行" ng-serve"命令它再次给我"端口4200已经在使用。"

我跑了" PS"得到一个PID列表并杀死了角度cli的PID并运行" ng-serve"再次仍然给出了相同的端口使用错误。

50 个答案:

答案 0 :(得分:194)

这是我用来杀死端口4200的进度

对于linux用户:

sudo kill $(sudo lsof -t -i:4200)

你也可以试试这个:

sudo kill `sudo lsof -t -i:4200`

对于Windows用户:

端口号4200已在使用中。在cmd中键入以下命令:

netstat -a -n -o

然后,通过右键单击终端找到端口号为4200的端口并单击查找,在&#34中输入4200;找到"然后点击"找到下一个": 假设您发现pid 18932使用了端口号4200.在cmd中键入以下命令:

taskkill -f /pid 18932

答案 1 :(得分:134)

将您的cmd.exe打开为administrator

然后找到PID

port 4200
netstat -ano | findstr :4200

Pid for port 4200

这里我有3个PID:

  • 红色来自“ng-serve”(127.0.0.1:4200)LISTENING
  • 绿色来自“您的浏览器”

仅杀死端口4200(杀死红色PID):

taskkill /PID 15940 /F

注意:杀死绿色只会强行关闭浏览器。

taskkill pid 15940

现在您可以执行“ng-serve”以在同一端口4200启动角度应用程序

其他内容:

单线:在寻找优化方法之后,以下是此答案的One-liner命令:(特别感谢:Josep Alsina此提示)

for /f "tokens=5" %a in ('netstat -ano ^| find "4200" ^| find "LISTENING"') do taskkill /f /pid %a

答案 2 :(得分:68)

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

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

请记住,您需要使用Command + C杀死Angular的Web服务器。

答案 3 :(得分:13)

不是ctrl + Z, 你必须运行stop ctrl + C

答案 4 :(得分:11)

使用此命令终止ng:

pkill -9 ng

答案 5 :(得分:10)

ng serve --port <YOUR_GIVEN_PORT_NUMBER>

您应该尝试使用上述命令在给定的端口上运行。

答案 6 :(得分:8)

当您使用Ctrl+Z时,您将暂停正在运行的任务但不会将其终止。您可以稍后使用命令fg来恢复任务。 如果您想退出ng serve,则应使用Ctrl+C代替,其中也会释放4200端口。

答案 7 :(得分:6)

我们可以通过以下命令强制终止端口。

kill -2 $(lsof -t -i:4200)

答案 8 :(得分:4)

Ubuntu OS中的VScode终端使用以下命令杀死进程

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

答案 9 :(得分:4)

对于Windows:

打开命令提示符

输入:netstat -a -o -n

找到要杀死的进程的PID。

输入:taskkill /F /PID 16876

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

enter image description here

现在,键入:ng serve以在同一端口4200

启动角度应用

答案 10 :(得分:4)

我正在分享此信息,因为在我的mac电脑上,有两个笨拙的命令没有完成工作:

sudo kill $(sudo lsof -t -i:4200)

sudo kill `sudo lsof -t -i:4200`

以下内容可以,但是如果您使用的是Visual Code中的集成终端,请尝试使用计算机终端并添加fowling命令:

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

答案 11 :(得分:4)

ng serve --port 4201 --live-reload-port 4200

并使用localhost:4201

进行访问

这应该作为临时解决方案。

尝试使用
列出端口使用情况 lsof -i:4200
并使用
手动杀死它 sudo kill -9 <Process PID using port 4200>

答案 12 :(得分:4)

我也遇到了同样的错误消息,所以我尝试了 ng serve --port 12012 ,它运行良好。

答案 13 :(得分:3)

netstat -anp | grep ":4200"

这会告诉你谁有这个端口。

答案 14 :(得分:3)

使用ctrl + z将程序置于后台。 在Linux上,您可以使用以下命令使会话回到前台:

fg ng serve

您不需要终止该进程。

答案 15 :(得分:2)

您也可以尝试在Visual Studio代码中运行您的应用程序 - :

ng serve --open --port 4201

您可以提供任何端口号。

答案 16 :(得分:2)

最简单的一行命令:

 sudo fuser -k 4200/tcp

答案 17 :(得分:2)

总而言之,有多种解决方案: 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 number)

4)键入netstat -ano|findstr :4200

获取包含端口号的外部地址PID,然后用

杀死它

taskkill /PID (pid number)/F

答案 18 :(得分:2)

如果使用的是VSCode,则可以选择终止终端并添加新终端。关闭选项卡,然后打开一个新选项卡。它对我有用。

编辑: 使用ctrl + c并按y。如果没有终止终端,则可以继续。 如果要打开Visual Studio的新实例并运行其他应用程序,则可以使用ng serve --port 4401。

答案 19 :(得分:2)

只需重新启动您正在使用的IDE,它就可以工作。

答案 20 :(得分:1)

要停止所有在Windows上运行的本地端口,单独使用这个简单的评论,而不是separatly用netstat搜索PID,

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

taskkill /im node.exe /f

答案 21 :(得分:1)

终止进程并关闭用于在该端口上运行应用程序的终端。

答案 22 :(得分:1)

如果是Linux操作系统,可以使用fuser -k 4200 / tcp

答案 23 :(得分:1)

您可以简单地使用ctrl+z停止服务器,而不是使用ctrl+c来停止服务器,而是可以在没有任何ng serve command的情况下愉快地使用errors,或者如果您想要要在不同的端口上运行,只需使用此命令ng serve --port portno(ex: ng serve --port 4201)

答案 24 :(得分:1)

如果您安装了 npm,如果您使用的是 angular,我假设您已经安装了,那么您只需运行 npx kill-port 4200。就是这样。

答案 25 :(得分:0)

关闭命令提示符(cmd),然后使用文本编辑器终端或仅使用cmd运行命令。

在我看来,这就是问题所在以及我的解决方法。

大多数情况下,使用命令提示符创建角度应用程序。那么您尝试在文本编辑器内部运行应用程序终端。每当您尝试保存时,您都可以在Windows命令提示符下看到一些正在运行的东西。因此只需将其关闭并在文本编辑器的终端中运行命令即可。

答案 26 :(得分:0)

似乎另一个程序正在使用您的默认端口4200。好的事情是,高于4200的端口通常是免费的。只是选择另一个。例如:

ng serve --port 4210

答案 27 :(得分:0)

要在Windows操作系统中解决此问题,请打开“任务管理器”,然后终止该过程。

TaskManager

答案 28 :(得分:0)

对于Windows用户:

步骤1.端口号4200已在使用中。以管理员身份打开cmd。在cmd中键入以下命令:

netstat -a -n -o

enter image description here

找到要终止的进程的PID。

第2步:cmd中的命令:

taskkill /F /PID 6500

第3步:现在,键入:

ng serve可以在同一端口4200上启动角度应用程序

答案 29 :(得分:0)

我为此遇到了很大的麻烦,甚至尝试了许多其他端口,却一无所获。

我做了npm install typescript@2.8,它解决了问题。由于某种原因,打字稿版本引起冲突,无法使用毛线或ng服务。

希望这对遇到相同问题的其他人也有用。

答案 30 :(得分:0)

现在,您可以将--port 0设置为免费端口。

ng serve --port 0 // will get a free port for you

答案 31 :(得分:0)

在我的Ubuntu上,我输入错了crl + z来关闭终端,然后我无法访问localhost:4200。唯一的溶蛋白就是:

$ sudo热熔器-k 4200 / tcp

然后重启服务器。

答案 32 :(得分:0)

Port 4200已被使用。使用-port指定其他端口错误原因 您系统中使用端口号4200的现有应用程序(非角度应用程序)。这是非常罕见的情况。在这种情况下,您需要按如下所述更改角度应用的端口号。 您已经运行了服务并退出了键入Control Z(Ctrl + Z)的应用程序,然后键入了ng serve,那么您会发现端口4200已经出现use_错误。在这种情况下,您需要取消上一个过程。

要更改我们的角度应用程序的端口号,请使用以下命令

ng serve --port 4201

现在输入ng serve

我们的角度应用程序将在http://localhost:4201上运行

要修复4200端口已在Mac和Linux OS(Ubuntu等)中使用错误,请使用以下命令

sudo kill $(sudo lsof -t -i:4200) Or
sudo kill `sudo lsof -t -i:4200` Or
sudo lsof -t -i tcp:4200 | xargs kill -9

在Windows操作系统中打开命令提示符。使用以下命令修复端口4200已在使用中的错误。

netstat -a -n -o | findStr "4200"`

获取进程ID并使用以下命令杀死该进程

taskkill -f /pid 11128

答案 33 :(得分:0)

ng serve --open 

分配一个本地主机来托管项目。在同一目录中运行相同的命令时,系统会在端口已被使用的地方分配 localhost:port。要解决此问题,可以轻松运行以下命令:

ng serve --port

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

答案 34 :(得分:0)

在我看来,上述所有方法均无效。

UBUNTU 18.04版本

以下命令有效。

sudo kill -9 $(lsof -i tcp:4200 -t)

答案 35 :(得分:0)

使用这三个命令:

  1. netstat -anb | findstr 4200
  2. netstat -anbo | findstr 4200
  3. taskkill -f /pid 22416

Cmd => 应以管理员身份运行

首先:检查它是否在听

const title = url.media.replace(/https:\/\/(\w+).*/, '\1');

输出:

C:\Windows\system32>netstat -anb | findstr 4200 

第二:查找IP

TCP  127.0.0.1:4200     0.0.0.0:0      LISTENING 

输出:

C:\Windows\system32>netstat -anbo | findstr 4200 

第三:杀死端口

TCP    127.0.0.1:4200     0.0.0.0:0    LISTENING    22416 
<块引用>

成功:PID 为 22416 的进程已终止。

你应该找到你自己的pid;

答案 36 :(得分:0)

我也面临类似的问题,而问题基本上是我在Powershell中打开了多个运行中的终端。因此,请确保您全部按住Ctrl + c键。

答案 37 :(得分:0)

对于Ubndu 18.04 须藤lsof -t -i tcp:3000 | xargs杀死-9

它在端口未成功终止时发生 因此此命令将终止它为4200或3000或3300 any

答案 38 :(得分:0)

要在localhost之外访问项目

示例:

ng serve --host 192.168.2.2:7006

答案 39 :(得分:0)

对我来说唯一有效的方法是重新启动系统/设备...

使用JetBrains的Webstorm IDE。

答案 40 :(得分:0)

在进行任何更改后的第一步,我先使用ng build,然后使用ng serve。它可以正常工作。

答案 41 :(得分:0)

在Windows中;在运行您的 ng服务的命令提示符下,只需单击并按以下键即可:

ctrl + c

它将询问您:Terminate batch job (Y/N)? 然后您输入Y

答案 42 :(得分:0)

netstat -plnet

tcp 0 0 127.0.0.1:4200 0.0.0.0:* LISTEN 1001 63955 7077 / ng

kill -9 7077

再次启动你的服务。

答案 43 :(得分:0)

Port 4200 is already in use. Use '--port' to specify a different port

这意味着您已经在端口4200上运行了另一个服务。如果是这种情况 你也可以。关闭其他服务。运行ng时使用--port标志 像这样服务:

 ng serve --port 9001

另一件需要注意的事情是,在某些计算机上,域localhost可能无法正常工作。 您可能会看到一组数字,例如127.0.0.1。当你运行服务时,它应该显示 您运行服务器的URL是什么,因此请务必阅读计算机上的消息 找到您确切的开发网址。

答案 44 :(得分:0)

它说我们已经运行了端口号为4200的服务请使用另一个端口而不是4200.以下命令是解决问题

  

ng serve --port 4300

答案 45 :(得分:0)

可以更改.angular-cli文件中的端口。例如:

"defaults": {
    "styleExt": "css",
    "component": {},
    "serve": {
      "port": 4205
    }
  }

此外,有必要将其添加到您的package.json

"ng": "ng",
"start": "ng serve"

答案 46 :(得分:0)

在linux mint 17上,这是有效的。

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

答案 47 :(得分:0)

每次我必须杀死该端口时,我都面临同样的问题。

我尝试了./node_modules/.bin/ng serve --proxy-config proxy.conf.json --host 0.0.0.0而不是npm start及其作品

答案 48 :(得分:0)

如果在CMD和IDE中编译角度JS代码,则会出现此问题。在CMD中,每当您在IDE中更改角度JS代码时,您的角度JS代码都会自动编译,然后您的IDE想要占用相同的端口,即已被CMD占用的4200 因此,这个问题有一个简单的解决方案,只需在IDE中编译代码时关闭cmd。

答案 49 :(得分:-1)

ng serve --port 122345对我来说很好。