Код Visual Studio: запуск preLaunchTask с несколькими задачами

Я пытаюсь понять, как запускать сразу несколько задач в prelaunchtask файла launch.json.

Мой код в tasks.json выглядит следующим образом:

    "version": "2.0.0",
"tasks": [
    {
        "label": "CleanUp_Client",
        "type": "shell",
        "command": "rm",
        "args": [
            "-f",
            "Client"
        ],
    },
    {
        "label": "Client_Build",
        "type": "shell",
        "command": "g++",
        "args": [
            "-g",
            "client.cpp",
            "-o",
            "Client",
            "-lssl",
            "-lcrypto"
        ],
        "group": {
            "kind": "build",
            "isDefault": true
        },
        "problemMatcher": "$gcc"
    }
]

В start.json для параметра preLaunchTask, если я только ставил задачу сборки, он работает, однако я хочу запустить несколько задач, в этом случае это CleanUp_Client и Client_Build.

Я попытался добавить еще один preLaunchTask. Однако похоже, что вы можете использовать этот параметр только один раз, поэтому я попытался:

"preLaunchTask": "build" + "clean", "preLaunchTask": "build"; "clean", "preLaunchTask": "build" & "clean", "preLaunchTask": "build" && "clean",

Все без успеха, а не правильный синтаксис.

Кроме того, в качестве второй части этого я хотел бы знать, как работает эта часть группы, и что это означает для «isDefault»: true.

Для справки: https://code.visualstudio.com/docs/editor/tasks

visual-studio-code,vscode-settings,vscode-tasks,

1

Ответов: 1


0 принят

Вот что-то, что сработает. В основном вы делаете еще одну задачу, в которой вы включаете все другие задачи, которые вы хотите запустить в preLaunchTask с dependsOn ключевым словом.

Код для справки:

    "tasks": [
    {
        "label": "CleanUp_Client",
        "type": "shell",
        "command": "rm",
        "args": [
            "-f",
            "Client"
        ]
    },
    {
        "label": "Client_Build",
        "type": "shell",
        "command": "g++",
        "args": [
            "-g",
            "client.cpp",
            "-o",
            "Client",
            "-lssl",
            "-lcrypto"
        ],
        "group": {
            "kind": "build",
            "isDefault": true
        },
        "problemMatcher": "$gcc"
    },
    {
        "label": "Build",
        "dependsOn": [
            "CleanUp_Client",
            "Client_Build"
        ]
    }
]

В этом случае вы должны установить preLaunchTask в «Build», и он будет запускать обе задачи.

Мне любопытно, если кто-то еще знает альтернативу или правильный синтаксис, чтобы просто запустить несколько задач из start.json preLaunchTask

визуально-студия-код, vscode-настройка, vscode-задача,
Похожие вопросы