解决VSCode中Debug和运行路径不一致

news2024/11/28 19:01:57

哈喽,大家好,我是木头左!

当尝试调试程序时,程序的运行路径与预期不符。这通常会导致程序无法正确读取文件或访问资源,从而影响调试过程。为了解决这个问题,可以在launch.json文件中配置CWD参数,以确保Debug和运行路径一致。

配置launch.json文件

launch.json文件是VSCode中用于配置调试会话的文件。通过修改这个文件,可以自定义调试器的行为,以满足的需求。要配置CWD参数,需要先找到launch.json文件。通常情况下,这个文件位于项目根目录的.vscode文件夹中。如果没有这个文件,可以手动创建一个。

接下来,需要编辑launch.json文件,添加或修改configurations部分。以下是一个示例配置:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "cwd": "${fileDirname}",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": true
        }
    ]
}

在这个示例中,为Python语言创建了一个名为“Python: Current File”的调试配置。其中,"cwd"参数设置为"${fileDirname}",表示当前工作目录(CWD)为当前打开文件所在的目录。这样,无论是调试还是运行程序,都会使用相同的路径。

参数解释

  • "name":调试配置的名称,可以自定义。
  • "type":调试器类型,这里使用的是Python。
  • "request":调试请求类型,这里选择的是“launch”,表示启动一个新的调试会话。
  • "cwd":当前工作目录(CWD),这里设置为"${fileDirname}",表示当前打开文件所在的目录。
  • "program":要运行的程序,这里设置为"${file}",表示当前打开的文件。
  • "console":指定调试输出的控制台类型,这里选择的是“integratedTerminal”,表示使用VSCode内置的终端。
  • "justMyCode":是否仅跳过不在源代码中的代码,这里设置为true

总结

通过配置launch.json文件中的CWD参数,可以确保在VSCode中进行调试时,程序的运行路径与预期一致。这样,就可以顺利地进行调试,避免因路径问题导致的各种困扰。希望这篇文章能帮助到你,让你在VSCode中使用调试功能更加顺畅。

我是木头左,感谢各位童鞋的点赞、收藏,我们下期更精彩!

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

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

相关文章

C语言学习初级阶段

文章目录 一、运算符与表达式1.1、运算符分类1.2、关系运算符与关系表达式2.1、逻辑运算符与逻辑表达式2.2、赋值运算符2.3、求字节运算符 二、选择、循环2.1、选择if-else讲解.2.1.1、关系表达式与逻辑表达式 2.2、while、for、continue、break讲解2.2.1、while循环2.2.2、for…

「PKUSC2018 星际穿越」Solution

题目传送门 [PKUSC2018] 星际穿越 简述题意 给定一张 n n n 个点的无向图和 q q q 次询问,每一个点 i i i 与 ∀ j ∈ [ l i , i − 1 ] \forall j \in [l_i , i -1] ∀j∈[li​,i−1] 都存在一条长度为 1 1 1 的无向边,每次询问给定 l i , r i…

DRF的三大认证

【 零 】一些注意事项 【1】如何使用视图类 #1 APIView -如果后续,写个接口,不需要用序列化类,不跟数据库打交道-发送短信接口,发送邮件接口#2 GenericAPIView-如果后续,写个接口,要做序列化或跟数据库打交…

数据结构复习指导之线索二叉树

文章目录 二叉树 考纲内容 复习提示 1.线索二叉树 1.1线索二叉树的基本概念 1.2中序线索二叉树的构造 1.3中序线索二叉树的遍历 1.4先序线索二叉树和后序线索二叉树 知识回顾 二叉树 考纲内容 (一)树的基本概念 (二)二叉…

酷柚易汛ERP源码部署/售后更新/搭建/上线维护

一款基于FastAdminThinkPHPLayui开发的ERP管理系统,帮助中小企业实现ERP管理规范化,此系统能为你解决五大方面的经营问题:1.采购管理 2.销售管理 3.仓库管理 4.资金管理 5.生产管理,适用于:服装鞋帽、化妆品、机械机电…

代码审计-PHP模型开发篇动态调试反序列化变量覆盖TP框架原生POP链

知识点 1、PHP审计-动态调试-变量覆盖 2、PHP审计-动态调试-原生反序列化 3、PHP审计-动态调试-框架反序列化PHP常见漏洞关键字 SQL注入: select insert update delete mysql_query mysqli等 文件上传: $_FILES,type"file"&…

人工智能驱动的设计工具的兴起:彻底改变创意产业

人工智能驱动的设计工具的兴起:彻底改变创意产业 概述 人工智能 (AI) 正在改变创意产业,设计也不例外。人工智能驱动的设计工具正在彻底改变设计师的工作方式,提供无与伦比的效率、创造力和创新水平。从生成图像和设计到自动化日常任务&…

深度学习基础之《TensorFlow框架(17)—卷积神经网络》

一、卷积神经网络介绍 1、背景 随着人工智能需求的提升,我们想要做复杂的图像识别,做自然语言处理,做语义分析翻译等等,多层神经网络的简单叠加显然力不从心 2、卷积神经网络与传统多层神经网络对比 (1)传…

Java基础编程(高级部分)

1. 类变量和类方法 1.1 什么是类变量 类变量也叫静态变量/静态属性,是该类的所有对象共享的变量,任何一个该类的对象去访问它时,取到的都是相同的值同样任何一个该类的对象去修改它时,修改的也是同一个变量。 1.2 定义类变量 1.3 访问类变量 类名.类变量名 或者 对…

【C语言】模拟实现深入了解:字符串函数

🔥引言 本篇将模拟实现字符串函数,通过底层了解更多相关细节 🌈个人主页:是店小二呀 🌈C语言笔记专栏:C语言笔记 🌈C笔记专栏: C笔记 🌈喜欢的诗句:无人扶我青云志 我自…

flowable多对并发网关跳转的分析

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 http://218.75.87.38:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: h…

塑胶ERP系统都有什么用处

在当今竞争激烈的塑胶市场中,企业如何高效地管理从原料采购到产品销售的整个生产链,直接关系到企业的生存与发展。ERP系统作为一种先进的管理信息系统,正逐渐成为塑胶企业不可或缺的工具。那么,一款优秀的ERP系统,究竟…

C语言自定义类型——枚举

枚举 枚举定义枚举 与 #define使用写一个简易计算器的程序。 枚举定义 格式: enum name(枚举什么类型) {//数据 ... };枚举,顾名思义一 一 列举。 在生活当中有很多可以列举的东西。 如: //电脑桌面上的软件 enum App {QQ ,WeChat,CCtalk,…

ESG榜单冲击数据集(2000-2022年)

参照《财经研究》中刘柏(2024)的做法,以2015年为中点,根据商道荣绿2015年6月公开的ESG榜单数据,构建ESG榜单冲击的DID数据,如果公司属于ESG榜单冲击的公司,且年份≥2015,则为1&#…

OBS插件--视频回放

视频回放 视频回放是一款源插件,它可以将指定源的视频缓存一段时间(时间可以设定),将缓存中的视频添加到当前场景中后,可以快速或慢速不限次数的回放。这个功能在类似体育比赛的直播中非常有用,可以捕获指…

Leetcode - 周赛396

目录 一,3136. 有效单词 二,3137. K 周期字符串需要的最少操作次数 三,3138. 同位字符串连接的最小长度 四,3139. 使数组中所有元素相等的最小开销 一,3136. 有效单词 本题就是一道阅读理解题: 字符串长…

Docker Compose常用命令与属性

大家好,今天给大家分享Docker Compose的常用命令,以及docker-compose文件的属性。Docker Compose 是一个用于定义和运行多容器 Docker 应用应用的重要工具。它通过一个配置文件(docker-compose.yml)来详细定义多个容器之间的关联、…

爬虫-无限debug场景 解决方式

解决无限debug 场景1 1. 鼠标右键 选择 continue to here(此处不停留)2. 鼠标右键 选择 edite breakpoint 设置 10 保证条件不成立 这行永远不执行3.方法置空 1. 方法调用加断点2. 控制台 setInterval function name() {}4. 替换文件 5. hoo…

如何使用phpMyAdmin删除数据库中的表?

本周有一个客户,购买Hostease的Linux虚拟主机,询问我们的在线客服,如何使用phpMyAdmin删除数据库中的表?我们为用户提供相关教程,用户很快解决了遇到的问题。在此,我们分享这个操作教程,希望可以…

LeetCode63:不同路径Ⅱ

题目描述 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish”)。 现在考虑网格中有障碍物。那么从左上角…