egg icon indicating copy to clipboard operation
egg copied to clipboard

macos egg 一直报端口占用

Open weijiadongyy opened this issue 1 year ago • 4 comments

在此输入你需要反馈的 Bug 具体信息(Bug in Detail):

使用npm init egg --type=simple创建基本项目,cnpm i安装依赖,npm run dev启动但是。 2023-03-16 11:40:15,602 ERROR 11107 nodejs.Error: create "Watcher" leader failed, the port:57357 is occupied by other 一直回报错,不断重试,这个端口会变化,但是还是报错。大概重试十几二十次随机到一个可用端口就能启动成功。 macos版本 13.2.1,电脑是m2 max芯片,node 版本 v18.14.0。

可复现问题的仓库地址(Reproduction Repo)

归档.zip

Node 版本号:

v18.14.0

Eggjs 版本号:

^3

相关插件名称与版本号(PlugIn and Name):

操作平台与版本号(Platform and Version):

Macos 13.2.1

weijiadongyy avatar Mar 16 '23 05:03 weijiadongyy

端口被占用?是不是其他的服务占用了端口,可以lsof -i:端口号 看下是否有其他的服务占用了端口,egg可以自己指定启动端口,可以自己改一个

williamnie avatar Mar 16 '23 06:03 williamnie

不是启动端口,启动端口是7001,那个可以指定,他是创建子进程的时候吧 我猜是为了进程间通讯的那个端口。至于 lsof 我也试过。当然是看到egg报错之后了。并没发现这个端口被占用,而且他这个端口我看到是5xxx随机的。我那么多端口都被占用了???不可能吧。

weijiadongyy avatar Mar 16 '23 08:03 weijiadongyy

我在mac intel上是没问题的,看log是在创建watch的时候报端口占用了, 你有查看过这些提示了被占用的端口 是真的被占用了么?在yarn dev的时候,看下log文件夹下的common-error.log 下的报错,里面的端口是否被占用

williamnie avatar Mar 16 '23 09:03 williamnie

这是开发模式下,egg-watcher插件会使用多进程研发模式增强跟egg服务通信,此时需要监听端口,报错时可以查下端口是否真的被占用了,如果不想监听项目文件的变化也可以把egg-watcher插件关了

sinkhaha avatar Mar 24 '23 08:03 sinkhaha