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

news/2024/9/30 11:37:09

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

当尝试调试程序时,程序的运行路径与预期不符。这通常会导致程序无法正确读取文件或访问资源,从而影响调试过程。为了解决这个问题,可以在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.ryyt.cn/news/45209.html

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

相关文章

redis——P1:理解

博主自学redis所用,欢迎交流讨论首先为什么要做一个redis出来?数据库不够用了吗?考虑到原本的应用程序是客户端访问服务端,服务端访问业务数据需要去数据库去拿,而数据库是个持久化的应用程序,是需要磁盘IO的,这就导致了速度会慢,并且如果存在大量的访问,会导致数据库…

接口测试:Mock 的价值与意义

简介 做测试的过程中,对于一些不容易构造、不容易获取的对象,用一个虚拟的对象来替代它,来达到相同的效果,这个虚拟的对象就是 Mock。当做测试的时候,如果后端某些接口还不成熟、所依赖的接口不稳定或者所依赖的接口为第三方接口、构造依赖的接口数据太复杂等等这些问题的…

【CC2DX引擎分析】Action动作的执行流程源码分析

cocos2dx内Action动作的管理与执行流程在引擎源码上的分析。 本文旨在自己对cocos2dx引擎学习的一个笔记总结,对Action动作源码进行分析,加深对动作执行流程的把握,学习架构并之后更好的提高代码质量。 分析总览 从main函数中的Application::getInstance()->run();开始作…

实验一 客户端脚本编程

一、实验目的 通过设计一个个人主页网站,学习常用的HTML标记,学习使用CSS对页面进行美化,掌握JavaScript的语法和常用的浏览器对象,初步学会使用Eclipse创建网站和编辑网页的方法。 二、实验内容和要求 1) 自己设计网页内容,做一张展示自己网页。要求展示的主要内容有:基…

模拟集成电路设计系列博客——7.2.1 流水线ADC基本介绍

7.2.1 流水线ADC基本介绍 流水线ADC和逐次比较型ADC类似,通过迭代搜索查找能够精确反应模拟输入信号的数字码。但是,相比较于通过单个模拟电路执行迭代,流水线ADC有着独立的模拟级来专门执行每次转换。流水线ADC的信号流如下图所示:所有的模拟级在每个时钟周期时进行工作,…

vue2 实现可拖拽悬浮球

实现效果相关代码点击查看代码 <template><div class="float-box"><divclass="button-box"@mousedown="mousedown"@mousemove="mousemove"@touchmove="mousemove"@mouseup="mouseup"@touchstart=&…

Linux 提权-MySQL UDF

本文通过 Google 翻译 MySQL User Defined Functions – Linux Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别注释补充。导航0 前言 1 什么是用户定义函数 (UDF) ? 2 枚举 UDF 漏洞利用条件2.1 手动枚举 UDF 漏洞利用条件2.1…

1.2 陶瓷电容(MLCC)选型----硬件设计指南(持续补充更新)

本系列文章是笔者总结多年工作经验,结合理论与实践进行整理备忘的笔记。希望能直接指导硬件工程师的设计实操,争取每一条设计要点指南都做到有理有据。既能帮助自己温习整理避免遗忘也能帮助其他需要参考的朋友。笔者也会不定期根据遇到的问题和想起的要点进行查漏补缺。如有…