【问题标题】:NodeJS debug Starting inspector on 127.0.0.1:42457 failed: address already in use errorNodeJS 调试在 127.0.0.1:42457 上启动检查器失败:地址已在使用中错误
【发布时间】:2018-07-21 13:15:37
【问题描述】:

我正在尝试使用 DiscordJS 库调试我的 Discord 机器人。我的问题是当我开始调试会话时(使用 vscode 或 --inspect-brk | --debug-brk 启动)

我收到Starting inspector on 127.0.0.1:42457 failed: address already in use 错误我已尝试在这两种情况下更改端口,但在不同的端口上仍然收到相同的错误。我的机器人是分片的,所以它自己的启动子进程。我曾尝试使用 vscode 附加到子进程,但仍然是同样的错误。

如果有人熟悉 DiscordJS 并且知道如何调试分片机器人,我们将不胜感激

【问题讨论】:

  • 您是在启动绑定到127.0.0.1localhost 的服务器吗?
  • stackoverflow.com/a/49797588/222356 对如何使用特定端口终止进程有一个很好的答案。杀死所有节点进程(根据下面的答案)可能不是一个好主意。

标签: node.js debugging visual-studio-code discord discord.js


【解决方案1】:

那是因为您已经在使用node filename.js 运行该应用程序,因此请停止该进程并使用相同的端口再次开始调试。

您可以看看下面的视频可能会有所帮助

https://www.youtube.com/watch?v=b8e9RAekktY&t=28s

【讨论】:

  • 我目前的 vscode 启动器是这个{ "type": "node", "request": "launch", "name": "Launch Program", "program": "${workspaceFolder}/Shards.js" }我不明白你说什么可以解决它?
  • 你可以试试killall node这将杀死所有正在运行的节点服务器并直接开始调试
  • 你使用的是 Chrome 调试器还是 VS Code 调试器
  • VS 代码调试器
  • 好吧,我也不确定我是否遇到了同样的问题,但是杀死节点并直接运行调试解决了我的问题!
【解决方案2】:

首先 Ctrl C(或 Cmd C)退出 cmd 中的所有进度。

Start Task Manager > Find all tasks named "node" > End process.

现在回到你的 cmd 并启动服务器。

【讨论】:

    【解决方案3】:

    就我而言,要解决这个问题,只需在 nodemon.json 上添加该配置

    {
     "execMap": {
      "js": "node --inspect=9300 -r sucrase/register"
      }
    }
    

    我添加了 --inspect=9300 来设置端口到这个特定的端口

    【讨论】:

      猜你喜欢
      • 2019-07-26
      • 2020-03-20
      • 2019-07-29
      • 1970-01-01
      • 2021-10-02
      • 2020-08-04
      • 1970-01-01
      • 1970-01-01
      • 2016-07-09
      相关资源
      最近更新 更多