【问题标题】:Ember Server: "Port 4200 is already in use", when no process runs on 4200Ember 服务器:“端口 4200 已在使用中”,当 4200 上没有进程运行时
【发布时间】:2019-01-16 05:35:43
【问题描述】:

使用 ember serve -e local 运行我的 ember 应用程序时,我得到:

端口 4200 已在使用中。

这很奇怪,因为 4200 上没有运行任何应用程序。我尝试使用 http-server 在 4200 上打开一个虚拟 HTTP 服务器,它工作得很好。当我通过命令行标志 ember serve --port 4200 指定端口时,它也可以工作。

我尝试过的一些事情:

  • 重新启动我的电脑。
  • 删除了node_modules
  • 删除 ember tmp 目录。
  • 禁用了我的防火墙。
  • 尝试禁用 wi-fi。

有什么想法吗?


我正在使用以下版本的 masOS High Sierra 10.13.6 上运行:

  • 节点:8.11.3
  • ember-cli:2.18.2
  • npm: 5.6.0 (也尝试使用 6.3.0)

了解也很有用:

  • 我的计算机上运行着其他 ember 应用程序就好了。
  • 我最近才开始遇到这个问题。
  • 过去,macOS 会在打开应用程序时不断询问我是否授权传入流量,但现在它不再询问我了。

【问题讨论】:

    标签: node.js macos networking ember.js ember.js-2


    【解决方案1】:

    经过进一步调查,问题似乎不是来自 macOS,而是依赖关系中的某些问题导致 ember-cli 失败...

    目前还不太清楚是什么原因造成的,我会尝试在此处发布任何其他信息,但现在如果您碰巧遇到此问题,只需将端口值直接传递给ember-cli,如下所示:

    ember serve --port 4200

    【讨论】:

    • 我们也不断收到此错误,并且添加 --port 4200 有效。你有没有弄清楚是什么原因造成的?
    • @dwenzel 我不确定...当我想到它时,当我重新安装我的node_modules 时,问题发生在我身上。我是唯一一个遇到这个问题的人,直到我的同事也更新了他们的node_modules(他们有不同的节点和 NPM 版本)所以我猜这个问题来自 Ember 包。
    • @LittleStrongMind 您是否碰巧为此找到了更持久的解决方案?重新安装 node_modules 后我遇到了同样的问题。
    【解决方案2】:

    我遇到了这个问题,并追踪到在.ember-cli 中为port 使用字符串与整数。

    // .ember-cli
    {
      "port": 8080, // works
      "port": "8080", // throws the error mentioned above
    }
    

    不确定这是否是其他人出现此错误的原因。如前所述,首先要确保该端口上没有实际运行任何其他内容。但是 OP 已经检查过了,我也是。

    【讨论】:

      猜你喜欢
      • 2016-12-29
      • 2017-01-13
      • 2018-08-20
      • 1970-01-01
      • 1970-01-01
      • 2017-11-12
      • 1970-01-01
      • 2019-09-25
      • 2019-12-24
      相关资源
      最近更新 更多