我有两个成员项目:项目1,项目2项目1:embers,端口4200工作正常。我关闭了project1终端,再次尝试启动project2内部的ember,当我这样做时,我得到的端口4200已经在使用中。端口4200已在使用中。为什么我会得到这个错误,因为其他的例子已经被杀死了,如何纠正它?
4ioopgfo1#
尝试以下操作,
sudo fuser -k 4200/tcp
它将杀死属于端口4200的所有进程。
l7mqbcuq2#
这些答案在Mac上都不起作用,所以我发布了这个解决方案。
kill -9 $(lsof -i tcp:4200 -t)
zbq4xfa03#
我将我的评论扩展为对windows用户的回答,要查看4200是否已经在使用中,如果是,哪个进程正在保留端口,请运行以下命令
netstat -ano | findstr :4200
这将显示如下结果,
TCP 0.0.0.0:4200 0.0.0.0:0 LISTENING 12784 TCP [::]:4200 [::]:0 LISTENING 12784
它将列出使用4200端口的进程列表。您可以在结果中找到进程id。在上面的结果中,pid为12784。我们需要终止此进程以释放端口。
TaskKill.exe /F /PID 12784
iaqfqrcu4#
以下解决方案适用于Mac和Linux。尝试使用:
ember serve --port 0
每个成员帮助:“传递0以自动选择可用端口”。(在终端中,键入ember help)。这种方法还可以同时运行多个成员站点。它可以帮助您找到可用端口以及每个端口的不同实时重新加载端口:
ember help
ember serve --port 0 --live-reload-port 0
如果在这些情况下出现相同的错误,也可以在终端提示符下输入以下python脚本以标识可用端口:
python -c 'import socket; s=socket.socket(); s.bind(("", 0)); print(s.getsockname()[1]); s.close()'
然后,您可以指定已知可用的端口:
ember serve --port <known_port_1> --live-reload-port <known_port_2>
3hvapo4f5#
这并不是一个真正的解决方案,但无论如何我都会发布它,以防有人和我遭遇同样的命运。整个上午,我都试图在任何可用端口上启动应用程序,结果却遇到了No open port found above 0。经过大量的尝试和错误,修复的问题是重新启动Mac。尽管它刚刚重新启动*(ツ)*/¯更新:似乎在.ember-cli中指定端口和主机会影响这一点。奇怪的是,如果您指定与命令行参数相同的值,那么它可以正常工作_(ツ)_/¯
No open port found above 0
.ember-cli
5条答案
按热度按时间4ioopgfo1#
尝试以下操作,
它将杀死属于端口4200的所有进程。
l7mqbcuq2#
这些答案在Mac上都不起作用,所以我发布了这个解决方案。
zbq4xfa03#
我将我的评论扩展为对windows用户的回答,
要查看4200是否已经在使用中,如果是,哪个进程正在保留端口,请运行以下命令
这将显示如下结果,
它将列出使用4200端口的进程列表。您可以在结果中找到进程id。在上面的结果中,pid为12784。我们需要终止此进程以释放端口。
iaqfqrcu4#
以下解决方案适用于Mac和Linux。
尝试使用:
每个成员帮助:“传递0以自动选择可用端口”。(在终端中,键入
ember help
)。这种方法还可以同时运行多个成员站点。它可以帮助您找到可用端口以及每个端口的不同实时重新加载端口:
如果在这些情况下出现相同的错误,也可以在终端提示符下输入以下python脚本以标识可用端口:
然后,您可以指定已知可用的端口:
3hvapo4f5#
这并不是一个真正的解决方案,但无论如何我都会发布它,以防有人和我遭遇同样的命运。整个上午,我都试图在任何可用端口上启动应用程序,结果却遇到了
No open port found above 0
。经过大量的尝试和错误,修复的问题是重新启动Mac。尽管它刚刚重新启动*(ツ)*/¯
更新:似乎在
.ember-cli
中指定端口和主机会影响这一点。奇怪的是,如果您指定与命令行参数相同的值,那么它可以正常工作_(ツ)_/¯