Ожидание отладки отключить... - Node.js в VSCode
Я пытаюсь просмотреть простой пример JavaScript в коде Visual Studio, но отладчик зависает, пытаясь отключиться.
macOS Sierra версия 10.12.6
Версия VSCode 1.18.1 (актуальная)
Node.js v8.9.2 (в актуальном состоянии), установленный с Homebrew
Debugging with inspector protocol because Node.js v8.9.2 was detected.
node --inspect-brk= /*(port)*/ jsSandbox.js
Debugger listening on ws:// (ip address)
Debugger attached.
Waiting for the debugger to disconnect...
Похоже, это было закрытой проблемой и с Code, и с Node, поэтому я так растерялся. Я делаю что-то неправильно?
Вот единственный файл JavaScript, который я пытаюсь отладить:
// learning about closure
function increase() { // — gets called once
var getBig = 0;
return function() { // — — gets called each time
getBig += 1; // — — increments each time
console.log(getBig);
};
}
var bigOne = increase(); // -- a reference to the instance of the function
bigOne(); //1
bigOne();//2
... и конфиг проекта launch.json:
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/jsSandbox.js",
"console": "internalConsole"
}
Ответы
Ответ 1
нажмите на кнопку, как показано ниже, чтобы открыть запуск. json-
![To open Launch.json]()
Дайте правильное имя файла здесь, где ваш сервер запускается. В моем случае это app.js
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/app.js"
}
]
Ответ 2
Вы должны убедиться, что вкладка, показывающая problems
, пуста, то есть вы должны устранить все проблемы. В случаях, когда проблемы возникают из файлов в node_modules
, проблемы исчезают, закрывая эти окна.
Например, на следующих рисунках на вкладке problems
есть 4 проблемы. Их исправление сделает работу отладчика корректной!
![введите описание изображения здесь]()
Ответ 3
Для меня зависла зависимость при отладке, которая, по-видимому, также приводит к сбою самого отладчика vscode. Перезапуск VSCode позволит мне снова выполнить отладку. Удаление ошибочной зависимости (т.е. исправление кода, как предложено в другом ответе), позволяет завершить процесс отладки, хотя сообщение консоли отладки все еще сбивает с толку:
Debugger listening on ws://127.0.0.1:48673/54esaf46-659e-sd92-5e45-01e78845825e
Debugger attached.
Waiting for the debugger to disconnect...
Казалось бы, отладчик не может отключиться. Но у меня нет проблем с началом нового сеанса отладки после этого.
Ответ 4
Проверьте ваш файл launch.json. Его присутствует в папке .vscode в вашем проекте. В файле launch.json измените значение программы на $ {workspaceFolder}/.
Ответ 5
Для меня помогло следующее:
- создал еще один новый отладчик в любом месте программы.
- Запустите новый отладчик
- Остановите новый отладчик из меню воспроизведения/остановки/шага
Это как бы сбрасывает отладчик, который, я думаю, из-за этой ошибки "не может отключиться".
Ответ 6
Я нашел синтаксическую ошибку в моем коде. Проблема была в том, что я не уловил исключение. Используя VS Code, я просто поставил галочку "Uncaught Exceptions" и нашел неисправный код.
Ответ 7
Я обнаружил несколько расширений Node Debug. "React Native Tools" зависел от обоих. После того как я удалил "React Native Tools", а затем "Node Debug" расширения, VS Code возобновил нормальное и ожидаемое поведение при запуске отладчика. Я использовал конфигурацию запуска по умолчанию:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/bin/www"
}
]
}
Ответ 8
Это происходит, когда вы нарушаете свой код. Запустите свой проект, и вы увидите, что ваше приложение падает. Исправьте проблему, и вы сможете снова выполнить отладку.