【VS Code】launch.json与tasks.json


VS Code 本质上而言是一个文本编辑器,是众多插件赋予它特殊功能。
本文介绍 tasks.jsonlaunch.json两个文件分别有什么作用以及如何配置

tasks.json

作用

tasks.json 文件是VS Code 中用于配置任务Tasks的文件。这些任务可以是编译代码、运行测试、构建项目等自动化任务。
使用不同的编程语言可能有不同的开发流程,比如 C/C++ 就需要编译(广义编译,包括了链接)、运行、测试、打包等等流程,而 Python只需要运行即可,为了把各种语言的不同开发流程抽象成同一套流程,于是有了编码(Code)— 构建(build)— 运行/调试(run/debug)— 测试 (test) — 打包(package) 等等,其中每个环节都可以认为是一个 task,所以可以利用 tasks.json来手动完成那些使用 IDE 时被隐藏的开发流程细节

字段

tasks.json 文件通常位于.vscode目录下,具有以下基本结构:

{
    "version": "2.0.0",
    "tasks": [
        {
            // 任务配置块
        }
    ]
}
配置块
  • labelstring, 任务的名称或标签,用于在任务列表中标识任务。
  • typestring, 任务类型,例如 shell 或 process。shell 表示任务将在 shell 中运行,process 表示任务将作为独立的进程运行。
  • commandstring, 要执行的命令,可以是编译器、构建工具、脚本等。
  • argslist<string>, 传递给命令的参数,数组形式。
  • groupstring, 任务分组,可以设置为 build 或 test,用于标识构建任务或测试任务。
  • presentation:控制任务输出的呈现方式,例如是否显示在终端中,是否清除之前的输出等。
  • problemMatcher: 配置错误和警告的匹配器,用于从任务输出中解析错误和警告。
  • options:任务执行的选项,例如环境变量、当前工作目录等。

launch.json

作用

launch.json是用于配置调试会话。它定义了调试器如何启动和运行程序。

字段

launch.json 文件一般位于 .vscode 目录下,具有以下基本结构:

{
    "version": "0.2.0",
    "configurations": [
        {
            // 配置块
        }
    ]
}
配置块

每个配置块代表一个调试配置,包含多个属性。以下是一些常见属性的说明:

  • typestring,调试器类型,如 python, cppdbg, node, java, 等。
  • requeststring,调试请求类型,通常为 launch(启动)attach(附加,附加到进程)
  • namestring,配置名称,在终端列表中的名称。
  • programstring,要调试的程序路径或文件,比如xx.out
  • argslist<string>,传递给程序的命令行参数,数组形式。
  • cwdstring,当前工作目录。
  • environmentlist<string>,环境变量设置。
  • sourceMaps:是否启用源映射(通常用于 JavaScript 调试)。
  • preLaunchTaskstring,调试前要执行的任务(通常用于编译等)。
  • postDebugTaskstring,调试结束后要执行的任务。
  • stopOnEntry: bool,调试时是否在程序入口处停止。
  • console:控制台类型,如 integratedTerminal, externalTerminal, 或 internalConsole
  • justMyCode: 是否只调试用户代码(用于 Python)。
  • pythonPath: Python 可执行文件的路径(用于 Python)。

更多的参数可以参考vs 官方介绍

两个文件区别

  • 用途
    • tasks.json:用于配置和管理自动化任务(编译、构建、运行脚本)
    • launch.json:用于配置调试器,定义调试会话的启动和运行参数
  • 配置内容
    • tasks.json:定义要执行的任务及其参数和选项
    • launch.json:定义调试会话的参数和选项,包括要调试的程序、调试器类型、启动或附加模式等
  • 工作流
    • tasks.json:适用于日常开发中的重复任务,自动化构建和测试流程
    • launch.json:适用于调试代码,启动调试会话或附加到正在运行的程序

在许多情况下,tasks.json 和 launch.json 可以结合使用。例如,可以在 launch.json 中定义一个调试配置,并在调试前执行一个由 tasks.json 配置的编译任务

参考文章

  1. Vscode 中launch.json与tasks.json文件
  2. VSCode中 task.json 和 launch.json 的作用和参数解释以及配置教程
  • 8
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值