#node.js #debugging #npm
#node.js #отладка #npm
Вопрос:
Я довольно долго без проблем использовал простой отладчик командной строки node для различных модульных тестов. (Редактировать: не node-inspector, просто старая cmdline node debug <scriptname>
, даже не используя браузер.)На днях что-то пошло не так, и теперь это больше не работает: он отключается, когда я пытаюсь установить точку останова в скрипте, который еще не загружен.
Это работает нормально, когда я устанавливаю точку останова в скрипте, который уже загружен (скрипт, который я ввел в командной строке node debug <scriptname>
) — я могу сказать sb(74)
или sb(<scriptname>, 74
), и он работает нормально, как и всегда. Но когда я устанавливаю точку останова для скрипта, который еще не загружен, отладчик просто полностью перестает работать. Я пытаюсь c
продолжить или n
для next, и вообще ничего не происходит: нет остановки в точке останова и, по сути, вообще нет подсказки. Как будто отладчик полностью перешел в спящий режим.
Я не могу вспомнить, как раньше выглядел вывод при запуске, но это кажется немного странным:
< Debugger listening on [::]:5858
connecting to 127.0.0.1:5858 ... ok
Я никогда не смотрел на это раньше, но похоже, что у него будет что-то другое ::
, кроме промежуточного []
. Может быть, это подсказка?
Я несколько раз удалял и переустанавливал как node, так и npm; Я даже удалял и переустанавливал homebrew и переделывал все это с нуля. Никакой радости.
- Homebrew 1.0.6
- Узел версии 6.7.0
- npm 3.10.7
Комментарии:
1. Возможно ли, что вы обновили узел до более новой версии?
2. Не уверен, что вы имеете в виду. Я переустанавливал его пару раз, и теперь у меня 6.7.0
3. Я предполагаю, что вы используете node-inspector. Иногда возникают некоторые несовместимости между версией узла и версией инспектора узлов. Я бы предложил удалить node-inspector и установить его снова.
4. Нет, просто прямой отладчик узла командной строки :
node debug <scriptname>
. Не подключаясь к браузеру или чему-либо еще, просто сценарии модульного тестирования из командной строки5. Упс, тогда извините, неправильное предположение 🙂