vscode任务配置之tasks.json

news2024/12/24 9:04:22

目录

用途说明

用途1:配置编译任务

1.生成task.json文件

2.编辑task.json文件

3.运行任务

用途2:给一个脚本文件配置任务

1.生成task.json文件

2.编辑task.json文件

3.运行任务


用途说明

在VS Code中配置任务主要涉及到task.json文件的编辑,这个文件允许你定义任务,比如编译、构建、测试、运行相关脚本等。

用途1:配置编译任务

1.生成task.json文件

如果已经有.vscode文件夹以及里面有task.json文件,则跳过这步。

  • 按 Ctrl+Shift+P 弹出命令面板
  • 输入Tasks
  • 选择 Tasks: Configure Task... 来针对特定任务进行配置
  • 然后选择C/C++:gcc.exe build active file,然后当前目录下就会生成.vscode文件夹,以及文件夹下生成一个task.json文件

也可以点击界面上方的 终端,再点击Configure Task,然后选择C/C++:gcc.exe build active file。

当然你也可以手动生成task.json文件,只不过用刚才这两种方式生成的task.json文件内容不是空的,有一些基本的配置。

2.编辑task.json文件

在task.json这个文件中,你可以定义任务的详细信息,包括任务的类型(如shell)、命令、参数、工作目录等。

假设你正在使用C++,并希望配置一个编译任务。task.json文件可以像下面这样配置。在下面的tasks选项中,可以配置多个任务,以下是配置一个任务的例子,如果已经存在其它任务,在tasks中再添加一个任务即可。

{  
    "version": "2.0.0",  
    "tasks": [  
        {  
            "label": "Build C++ program", // 任务标签(任务名字)
            "type": "shell", // 任务类型(自己随便取个名字)  
            "command": "D:\\software\\mingw64\\bin\\gcc.exe", // 编译命令
                                                    //(执行哪个可执行文件)  
            "args": [ // 设置编译选项
                "-g", // 启用调试信息  
                "${file}", // 当前打开的文件  
                "-o", // 输出文件  
                "${fileDirname}/${fileBasenameNoExtension}" // 输出文件名
                                                            //(无扩展名)  
            ],  
            "group": {  
                "kind": "build",  
                "isDefault": true // 设置为默认构建任务  
            },  
            "problemMatcher": ["$gcc"], // 错误和警告匹配器  
            "presentation": {  
                "echo": true, // 显示命令  
                "reveal": "always", // 显示输出面板  
                "focus": false, // 不自动聚焦输出面板  
                "panel": "shared", // 共享输出面板  
                "showReuseMessage": true, // 显示重用消息  
                "clear": false // 不清除之前的输出  
            }  
        }  
    ]  
}

上面这个例子中,args编译选项中,"${file}"是对当前文件进行编译,但有时需要多个源文件进行编译,可以使用通配符,比如把"${file}"修改为"${workspaceFolder}\\*.cpp",表示构件当前工作区的所有c++文件。

3.运行任务

  • 通过命令面板(Ctrl+Shift+P),输入并选择Tasks: Run Build Task。或者直接点击上方的终端,然后点击运行任务。
  • 选择你刚才配置的那个任务名字,比如Build C++ program,VS Code将执行编译命令,并在“终端”或“输出”面板中显示结果。

然后该任务就生成了一个可执行文件。然后就再运行这个可执行文件就可以了。

用途2:给一个脚本文件配置任务

1.生成task.json文件

参考用途1那里的步骤。

2.编辑task.json文件

在task.json这个文件中,你可以定义任务的详细信息,包括任务的类型(如shell)、命令、参数、工作目录等。

tasks.json文件中,你将定义一个或多个任务。每个任务都有一个label(标签),用于在VS Code中引用它,以及command(命令)和可能的args(参数)来执行脚本。

假设你需要添加一个Python脚本的任务,你可以像下面这样,在任务的最后面添加。

{  
    "version": "2.0.0",  
    "tasks": [  
        {  
            "label": "Build C++ program", // 任务标签(任务名字)
            "type": "shell", // 任务类型(自己随便取个名字)  
            "command": "D:\\software\\mingw64\\bin\\gcc.exe", // 编译命令
                                                    //(执行哪个可执行文件)  
            "args": [ // 设置编译选项
                "-g", // 启用调试信息  
                "${file}", // 当前打开的文件  
                "-o", // 输出文件  
                "${fileDirname}/${fileBasenameNoExtension}" // 输出文件名
                                                            //(无扩展名)  
            ],  
            "group": {  
                "kind": "build",  
                "isDefault": true // 设置为默认构建任务  
            },  
            "problemMatcher": ["$gcc"], // 错误和警告匹配器  
            "presentation": {  
                "echo": true, // 显示命令  
                "reveal": "always", // 显示输出面板  
                "focus": false, // 不自动聚焦输出面板  
                "panel": "shared", // 共享输出面板  
                "showReuseMessage": true, // 显示重用消息  
                "clear": false // 不清除之前的输出  
            }  
        },
		
		{  
            "label": "Run Python Script", // 任务的标签  
            "type": "shell", // 任务类型,这里使用shell类型  
            "command": "python", // 要执行的命令,这里假设你已经在PATH中安装了Python  
            "args": [  
                "${file}" // 参数,这里使用VS Code的变量表示当前打开的文件  
            ],  
            "group": {  
                "kind": "build",  
                "isDefault": true // 设置为默认构建任务  
            },  
            "problemMatcher": [], // 问题匹配器,这里为空
            // 因为Python执行可能不会直接产生VS Code能识别的错误和警告格式  
            "presentation": {  
                "echo": true, // 显示执行的命令  
                "reveal": "always", // 总是显示输出  
                "focus": false, // 不自动聚焦输出面板  
                "panel": "shared", // 使用共享面板  
                "showReuseMessage": true, // 显示重用消息  
                "clear": false // 不清除之前的输出  
            }  
        }  
    ]  
}

注意:如果你的系统上安装了多个Python版本,或者你想要指定使用特定的Python解释器,你可能需要将"command": "python"更改为指向特定Python解释器的完整路径"command": "D:\software\python3.6.6.exe"

3.运行任务

  • 通过命令面板(Ctrl+Shift+P),输入并选择Tasks: Run Build Task。或者直接点击上方的终端,然后点击运行任务。
  • 选择你刚才配置的那个任务名字,比如Run Python Script,VS Code将执行相应的任务,并在“终端”或“输出”面板中显示结果。


end

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2106305.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

训练 GAN 之技巧

GAN 是以很难训练而闻名的,我们接下来介绍一些其中的原因和训练GAN的小技巧。 首先,我们回顾一下判别器和生成器都在做些什么。判别器的目标是要分辨真的图片与产生 出来的假图片间的差异,而生成器在做的事情是要去产生假的图片,骗…

RK3588平台开发系列讲解(显示篇)图像的宽高和跨距

文章目录 一、图像宽、高二、图像跨距沉淀、分享、成长,让自己和他人都能有所收获!😄 “图像的基本组成单元为像素,对视频图像的存储,实际上是对像素的存储”。基于图像位深,我们可以确定存储一个像素所需的字节数,下面,可以开始“指导”计算机如何定量读取图像数据了…

图文解析保姆级教程:Postman专业接口测试工具的安装和基本使用

文章目录 1. 引入2. 介绍3. 安装4. 使用 此教程摘选自我的笔记:黑马JavaWeb开发笔记16——请求(postman、简单参数、实体参数、数组集合参数、日期参数、Json参数、路径参数)想要详细了解更多有关请求各种参数介绍的知识可以移步此篇笔记。 1…

存储卡恢复:如何从存储卡恢复已删除的照片/视频?

如何使用免费软件从存储卡恢复已删除的照片/视频? 在我们的指南中,从 Android 手机的微型 SD 卡恢复已删除的文件是免费的。以下是恢复所需的信息。 一台装有 Windows 操作系统的计算机;一个存储卡适配器(必需,因为如…

配置IPv6 over IPv4的手动隧道和自动隧道

正文共:888 字 9 图,预估阅读时间:1 分钟 随着IPv6的不断普及,现在家庭宽带基本上都能获取到IPv6地址了,介于此种场景,我们介绍了比较常见的GRE over IPv6的业务配置(配置GRE over IPv6隧道&…

基于SSM+MySQL的民宿推荐系统

系统背景 随着经济发展,各类电子产品普及千家万户。网民数量不断增加,网络显然已经成为了人际交流的重要形式。回顾近一个世纪的科技发展史,各类新的信息发布手段均随着时代洪流更新。旧时代是广播,报纸,电视&#xff…

读软件设计的要素01概念

1. 概念 1.1. 一个软件,从运行于手机上的最小程序到大型的企业系统,都是由概念组成的,每个概念都是独立的功能单元 1.2. 软件中的可用性问题,经常可以追溯到其底层概念 1.2.1. 概念帮助识别软件的不可用性 1.3. 概念都是以同样…

后端发送数据成功,前端也接收成功,但是显示不出来

提示&#xff1a; shouye.vue:128 [Vue warn]: Property "LiuyanData" was accessed during render but is not defined on instance. at <PopularPets onVnodeUnmountedfn<onVnodeUnmounted> refRef< Proxy(Object) {getdata: ƒ, getLiuyan: ƒ, …} …

武汉凯迪正大—氧化锌避雷器带电测试仪 氧化锌避雷器阻性电流测试仪

产品概述 武汉凯迪正大KDYZ-201氧化锌避雷器测试仪是用于检测氧化锌避雷器电气性能的专用仪器&#xff0c;该仪器适用于各种电压等级的氧化锌避雷器的带电或停电检测&#xff0c;从而及时发现设备内部绝缘受潮及阀片老化等危险缺陷。 仪器操作简单、使用方便&#xff0c;测量…

经济下行,这4家AGV巨头却逆势扩产

导语 大家好&#xff0c;我是社长&#xff0c;老K。专注分享智能制造和智能仓储物流等内容。 在全球经济普遍面临下行压力的微妙时刻&#xff0c;当众多企业纷纷收缩战线、谨慎前行时&#xff0c;自动引导车&#xff08;AGV&#xff09;行业却悄然掀起了一股扩产浪潮。 四家行业…

2024国赛数学建模备战-数学建模思想方法大全及方法适用范围

第一篇&#xff1a;方法适用范围 一、统计学方法 1.1 多元回归 1、方法概述&#xff1a; 在研究变量之间的相互影响关系模型时候&#xff0c;用到这类方法&#xff0c;具体地说&#xff1a;其可以定量地描述某一现象和某些因素之间的函数关系&#xff0c;将各变量的已知值带…

C3与C2f模块介绍与代码

C3与C2f模块介绍与代码 微信公众号&#xff1a;幼儿园的学霸 目录 文章目录 C3与C2f模块介绍与代码目录简介CSP/C3模块概述C2f模块概述C3与C2f结构对比参考资料 简介 顺序:CSPNet->C3->C2f C2 module refers to the CSP (Cross Stage Partial) Bottleneck with 2 convol…

【LabVIEW学习篇 - 18】:人机界面交互设计02

文章目录 错误处理函数简单错误处理器通用错误处理器清楚错误合并错误错误代码至错误簇转换查找第一个错误 鼠标指针 错误处理函数 在LabVIEW中&#xff0c;是通过错误输入簇和错误输出簇来传递错误信息&#xff0c;可以将底层错误信息传递到上层VI。设计人员需要对不同程度的…

Air780E低功耗4G模组硬件设计手册01

本文主要介绍了Air780E的硬件设计中的的应用接口部分。 一、主要性能 Air780E模块功能框图&#xff1a; 模块型号列表&#xff1a; 模块主要性能&#xff1a; *注: 模组工作在-40C&#xff5e;-35C或75C&#xff5e;85C温度范围时&#xff0c;模组可以正常工作&#xff0c;但…

基于51单片机的车距离警示灯proteus仿真

地址&#xff1a; https://pan.baidu.com/s/1tBIqTY4cCK38Z_xRKrq83g 提取码&#xff1a;1234 仿真图&#xff1a; 芯片/模块的特点&#xff1a; AT89C52/AT89C51简介&#xff1a; AT89C52/AT89C51是一款经典的8位单片机&#xff0c;是意法半导体&#xff08;STMicroelectro…

pyqt fromlayout 布局中间空隙问

问题&#xff1a;当采用 form layout 布局时候&#xff0c;在qt designer 设计界面&#xff0c;如果把中间移除会在布局中间占用位置&#xff08;图1、图2&#xff09;&#xff0c;需要把后续空间向前移动后保存&#xff08;图3&#xff09;&#xff0c;在将界面文件打开即显示…

基于STM32景区环境监测系统的设计与实现(论文+源码)

1系统方案设计 根据系统功能的设计要求&#xff0c;展开基于STM32景区环境监测系统设计。如图2.1所示为系统总体设计框图。系统以STM32单片机作为系统主控模块&#xff0c;通过DHT11传感器、MQ传感器、声音传感器实时监测景区环境中的温湿度、空气质量以及噪音数据。系统监测环…

中国各省会、地级市到杭州球面距离的数据

环境规制是一系列政策措施&#xff0c;旨在解决环境问题、保护生态环境&#xff0c;并推动低碳可持续发展。这些措施包括法律法规、行政命令和经济激励等&#xff0c;目的是减少企业和个人对环境的负面影响。环境规制强度是衡量这些政策措施严格程度的指标&#xff0c;通常通过…

GIS十大经典问题之9.地形分析问题

本系列《GIS十大经典问题》包括&#xff1a; 缓冲区分析问题叠加分析问题最短路径分析问题空间插值问题泰森多边形&#xff08;Voronoi 图&#xff09;生成问题空间聚类问题空间数据压缩问题空间查询问题地形分析问题网络分析中的连通性问题 一、地形分析介绍 地形分析在地理…

HTTP 二、进阶

四、安全 1、TLS是什么 &#xff08;1&#xff09;为什么要有HTTPS ​ 简单的回答是“因为 HTTP 不安全”。由于 HTTP 天生“明文”的特点&#xff0c;整个传输过程完全透明&#xff0c;任何人都能够在链路中截获、修改或者伪造请求 / 响应报文&#xff0c;数据不具有可…