Отладчик узла-инспектора продолжает прерываться из-за "прослушивания EADDRINUSE"

У меня есть приложение node.js, которое я хочу отладить с помощью инспектора узла в Mac OS X. Я запустил отладчик с помощью этой команды.

$ node-debug app.js

Инспектор узлов теперь доступен по http://127.0.0.1:8080/?ws=127.0.0.1:8080&port=5858 Отладка. app.js Отладчик прослушивает порт 5858

Но этот процесс отладки инспектора узлов продолжает прерываться вскоре после того, как я пытаюсь выполнить отладку / пошаговое выполнение кода в Chrome. Сообщение об ошибке ниже:

events.js: 85

  throw er; // Unhandled 'error' event
        ^ Error: listen EADDRINUSE

at exports._errnoException (util.js:746:11)
at Server._listen2 (net.js:1156:14)
at listen (net.js:1182:10)
at Server.listen (net.js:1267:5)
at Object.<anonymous> (/Users/cbai/Dev/operational-insight/app.js:57:35)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.runMain [as _onTimeout] (module.js:501:10)

Похоже, что это связано с конфликтом портов, как указано "listen EADDRINUSE". Но когда я перечисляю все процессы, которые используют порты 8080 и 5858 после запуска отладчика, появляются только процессы узлов.

$ lsof -n -i4TCP: 8080 | grep LISTEN

узел 72222 xxx 14u IPv4 0x2a579a5d0db63533 0t0 TCP 127.0.0.1:http-alt (LISTEN)

$ lsof -n -i4TCP: 5858 | grep LISTEN

узел 72223 xxx 19u IPv6 0x2a579a5cee696ef3 0t0 TCP *:5858 (LISTEN)

Когда процесс отладчика узла-инспектора умер / произошел сбой, порты 8080 и 5858 свободны, а приведенные выше команды lsof ничего не возвращают. Не уверен, что вызывает "EADDRINUSE". Я не смог отладить из-за этой ошибки. Кто-нибудь может помочь? Благодарю.

0 ответов

Другие вопросы по тегам