Visual Studio 代码:运行 具有多个任务的 preLaunchTask

Visual Studio Code: running preLaunchTask with multiple tasks

我想弄清楚如何在 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"
    }
]

在 launch.json 中为 preLaunchTask 参数如果我只把构建任务它工作,但是我想 运行 多个任务,在这种情况下是 CleanUp_Client 和 Client_Build.

我尝试添加另一个 preLaunchTask - 但是看起来您只能使用该参数一次,所以我尝试了:

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

都没有成功,语法不正确。

此外,作为第二部分,我想知道它的组部分是如何工作的,以及它对 "isDefault" 意味着什么:是的。

供您参考:https://code.visualstudio.com/docs/editor/tasks

这是有用的东西。基本上你做另一个任务,其中你包括所有其他你想要 运行 在你的 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",它将 运行 这两个任务。

我很好奇是否有人知道 运行 来自 launch.json preLaunchTask

的几个任务的替代或正确语法