Задачи VS Code не могут быть найдены при запуске config, если они находятся в конфигурации рабочей области. - PullRequest
0 голосов
/ 22 марта 2020

Традиционно мы помещаем launch.json и tasks.json в папку .vscode, чтобы обеспечить работу отладчика. Между тем, VS Code также поддерживает разработчика, чтобы поместить эти 2 конфигурации в рабочее пространство, установив их в *.vscode-workspace. Вот шаги для воспроизведения:

  1. Создание нового js проекта npm init со всеми параметрами по умолчанию.
  2. Создание нового index.js с 1 строкой кода: console.log('done');
  3. Создайте новый файл ts-sample.code-workspace в той же папке root, содержимое должно выглядеть следующим образом:
{
    "launch": {
        "version": "0.2.0",
        "configurations": [
            {
                "type": "node",
                "request": "launch",
                "name": "Launch Program",
                "skipFiles": [
                    "<node_internals>/**"
                ],
                "program": "${workspaceFolder}/index.js",
                "preLaunchTask": "nodeversion"
            }
        ]
    },
    "tasks": {
        "version": "2.0.0",
        "tasks": [
            {
                "label": "nodeversion",
                "type": "npm",
                "script": "nodeversion",
            }
        ]
    },
    "folders": [
        {
            "path": "."
        }
    ]
}
Откройте рабочее пространство Откройте index.js и нажмите F5 В диалоговом окне с сообщением об ошибке появится следующее сообщение об ошибке: Could not find the task 'nodeversion' Открыть панель OUTPUT и сообщение об ошибке отображается следующим образом:
Error: The npm task detection didn't contribute a task for the following configuration:
{
    "label": "nodeversion",
    "type": "npm",
    "script": "nodeversion"
}
The task will be ignored.

Для упрощения демонстрации, пожалуйста, клонируйте пример проекта из https://github.com/mannok/WorkspaceLaunchTaskDemo

Это ошибка кода VS или что-то я пропустил?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...