前言

在 Visual Studio Code(VSCode)中,tasks.json 文件是用来定义和配置任务(Tasks)的。任务指的是在开发过程中需要自动化执行
的一系列操作,例如编译代码、运行测试、打包项目等。通过配置 tasks.json,你可以简化这些操作,使其可以一键执行,提高效率。

vscode 能利用task的地方就是快捷键功能, tasks.json 可以配合 Task Buttons 扩展功能,在vscode下方自定义快捷按钮,实现快捷操作,比如自动化命令

  • 定义和管理各种任务,包括编译、测试、打包、部署等。这样可以避免在不同项目中重复编写类似的命令行脚本,提高代码复用性和组织性。

  • 快捷执行:通过键盘快捷键(如Ctl+Shi+B)或任务面板快速选择并运行bui1d任务,无需切换到命令提示符或终端手动输入命令,提升了工作效率,

  • 交互体验:任务执行时,VSCode会自动打开输出面板显示任务执行过程和结果,便于实时监控和调试。此外,用户可以轻松地终止任务、重新运行任务、切换不同的任务配置等。

  • 与VSCode生态集成:任务可以与VSCode的其他功能紧密结合,如调试(launch.json)、版本控制、代码片段等,形成一体化的工作流。例如可以配置一个任务在调试前先构建项目,或者在保存文件时自动触发格式化任务。

  • 跨平台一致性:对于跨平台开发,VSCode的任务配文件(tasks.json)可以确保在不同操作系统(Windows、macOs、Linux)上执行一致的构建或开发流程,减少了平台差异带来的困扰。

如何创建

  • 点击 终端 -> 配置生成默认任务

  • 在 .vscode 目录中创建 tasks.json 文件

如何编写

官方说明文档(配置选项很全):

https://code.visualstudio.com/docs/editor/tasks-appendix

常用模板:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
"version": "2.0.0",
"tasks": [
{
"label": "编译", //任务名字
"type": "shell", //任务类型,shell
"command": "make -j32", //任务命令
"group": "build"
},
{
"label": "重新编译",
"type": "shell",
"command": "make -j32 -B",
"group": "build"
},
{
"label": "清理",
"type": "shell",
"command": "make clean",
"group": "build"
},
]
}

如何使用

快捷键打开: CTRL + SHIFT + B

  • 点击 终端 -> 运行任务

配合 Task Buttons 使用

Task Buttons 插件是将 tasks.json 中的任务功能变为UI操作,以按钮形式提供。

  1. 扩展 商店中安装 Task Buttons 插件

  2. 打开 vscode 的 settings.json 设置, 增加以下信息(注意task必须对应tasks.json中的label)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
"VsCodeTaskButtons.tasks": [
{
"label": "Build", //工具栏按钮显示名字
"task": "编译", //tasks.json中对应的任务label
"tooltip": "编译" //鼠标悬停提示文字
},
{
"label": "Rebuild",
"task": "重新编译",
"tooltip": "重新编译"
},
{
"label": "Clean",
"task": "清理",
"tooltip": "清理"
},
],
}
  1. 在 vscode 左下方可以看到快捷按钮,点击即可使用