n1ro°
RU

Текст и данные · Инструкция

Как дождаться background task перед запуском debugger в VS Code

Типичный пример — `npm run watch`: процесс не завершается, но debug должен стартовать после первой успешной компиляции.

Редакция N1RO · Проверено

Короткий ответ

Background task может быть `preLaunchTask`, но ей нужен background problem matcher, который сообщает VS Code, когда watcher считается готовым. Без этого debugger не знает, что бесконечная задача дошла до состояния ready.

Что делать

  1. Опишите watcher в `tasks.json` и задайте `isBackground: true`.
  2. Подключите подходящий background problem matcher, например `$tsc-watch` для TypeScript watcher.
  3. В `launch.json` укажите label этой задачи в `preLaunchTask`.
  4. Запустите debug configuration.
  5. Проверьте, что VS Code ждёт ready-состояния watcher, а не его завершения процесса.
  6. Если debug висит, отладьте begin/end patterns problem matcher.

Важно

  • Обычный problem matcher без background readiness не решает проблему бесконечной watcher-задачи.

Что учитывать

Обычный problem matcher без background readiness не решает проблему бесконечной watcher-задачи.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. Integrate with External Tools via Tasks). Пример и формулировки — редакция N1RO на 2026-09-18.