gpt4 book ai didi

json - 我可以在 vs 代码中为一种以上的语言配置 task.json 文件吗?

转载 作者:行者123 更新时间:2023-12-04 02:34:17 27 4
gpt4 key购买 nike

我想在 VS Code 中配置一个 tasks.json 文件来运行 python 和 java 代码只需按下:

  • Ctrl + Shift + B

  • Python 和 Java 已配置,但需要两个不同的 tasks.json 文件。
    但我只能在 tasks.json 文件夹中保留一个 .vscode 文件。
    如何在 tasks.json 文件中合并两个配置文件?
    对于 Python:
    {
    "version": "2.0.0",
    "tasks": [{
    "label": "Compile and run",
    "type": "shell",
    "command": "",
    "args": [
    "/usr/bin/time",
    "-v",
    "--output",
    "sys.txt",
    "timeout",
    "5",
    "python3",
    "${relativeFile}",
    "<",
    "input.txt",
    ">",
    "output.txt",
    ],
    "group": {
    "kind": "build",
    "isDefault": true
    },
    "problemMatcher": {
    "owner": "py",
    "fileLocation": [
    "relative",
    "${workspaceRoot}"
    ],
    "pattern": {
    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
    "file": 1,
    "line": 2,
    "column": 3,
    "severity": 4,
    "message": 5
    }
    }
    }],


    }

    对于 Java:
    {
    "version": "2.0.0",
    "tasks": [{
    "label": "Compile and run",
    "type": "shell",
    "command": "",
    "args": [
    "/usr/bin/time",
    "-v",
    "--output",
    "sys.txt",
    "timeout",
    "5",
    "java",
    "${relativeFile}",
    "<",
    "input.txt",
    ">",
    "output.txt",
    ],
    "group": {
    "kind": "build",
    "isDefault": true
    },
    "problemMatcher": {
    "owner": "java",
    "fileLocation": [
    "relative",
    "${workspaceRoot}"
    ],
    "pattern": {
    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
    "file": 1,
    "line": 2,
    "column": 3,
    "severity": 4,
    "message": 5
    }
    }
    }],
    }

    最佳答案

    很简单,您只需合并 "tasks":[] 数组并唯一地命名您的任务。任务数组可以包含任意数量的任务对象,有些也可以相互依赖。 More info on VSCode Tasks
    在这里,当您使用 this 和 CTRL + SHIFT + B 时,它​​将显示选择任务的选项。
    Tasks option

    {
    "version": "2.0.0",
    "tasks": [
    {
    "label": "Compile and run Python",
    "type": "shell",
    "command": "",
    "args": [
    "/usr/bin/time",
    "-v",
    "--output",
    "sys.txt",
    "timeout",
    "5",
    "python3",
    "${relativeFile}",
    "<",
    "input.txt",
    ">",
    "output.txt"
    ],
    "group": {
    "kind": "build",
    "isDefault": true
    },
    "problemMatcher": {
    "owner": "py",
    "fileLocation": ["relative", "${workspaceRoot}"],
    "pattern": {
    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
    "file": 1,
    "line": 2,
    "column": 3,
    "severity": 4,
    "message": 5
    }
    }
    },
    {
    "label": "Compile and run Java",
    "type": "shell",
    "command": "",
    "args": [
    "/usr/bin/time",
    "-v",
    "--output",
    "sys.txt",
    "timeout",
    "5",
    "java",
    "${relativeFile}",
    "<",
    "input.txt",
    ">",
    "output.txt"
    ],
    "group": {
    "kind": "build",
    "isDefault": true
    },
    "problemMatcher": {
    "owner": "java",
    "fileLocation": ["relative", "${workspaceRoot}"],
    "pattern": {
    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
    "file": 1,
    "line": 2,
    "column": 3,
    "severity": 4,
    "message": 5
    }
    }
    }
    ]
    }
    由于无法根据文件扩展名 ( See Issue here ) 告诉 VSCode 运行哪个任务。
    您始终可以为构建任务创建键盘快捷键并执行它,而无需从弹出窗口中选择它。例如,对于下面的 tasks.json,您可以通过将其添加到 keybindings.json 文件来创建快捷方式。
    [{
    "key": "ctrl+alt+h",
    "command": "workbench.action.tasks.runTask",
    "args": "Compile and run Python" // this text should match exactly with task "label"
    }]

    关于json - 我可以在 vs 代码中为一种以上的语言配置 task.json 文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62566196/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com