关于vscode使用相对路径运行代码时找不到响应文件No such file or directory,修改用于debugger的launch.json文件不能完全解决所有的问题时

溯因:报错的原因是,使用python extension进行代码解析的时候默认的根目录为.vscode所在的目录,如果需要使用相对路径,所有的路径都需要相对与.vscode目录进行相对才有效,这是python extension本身造成的问题.目前无法直接彻底解决,期待工程师的fix!

表现:vscode 运行/调试代码有三种方式,因而将造成这种错误:

  • ①在终端运行python文件,将调用python扩展进行运行,会带来NO such file 的问题
  • ②配置cmd终端,通过在settings.json中添加 "terminal.integrated.shell.windows": "C:\\WINDOWS\\System32\\cmd.exe",即cmd.exe的位置,即可在vscode终端集成命令行,这样使用 python XX.py 运行文件不会带来No such File 问题
  • ③大部分网友提出的"半程"解决方案,对python程序进行debuge时候,需要配置 launch.json文件,在其中加入"cwd": "${fileDirname}",即可将当前根目录转至文件所在绝对路径,使用Debugger时候,不会因为相对路径而报错,注意:只是在debugger时候!!!!

解决措施(一):较为繁琐但是可以使用python扩展运行时报错问题的方法(几行代码):在python程序开头:

(将目录改成当前program的绝对路径)

import os
import sys
os.chdir(sys.path[0])

解决措施(二):半程解决方案的基础上改进

改进动机:由于我们并不希望所有程序都去调试运行,故:
哈哈哈哈,皮一下:试试"以非调试方式运行",即可.

Visual Studio Code (VSCode) 中遇到 "unable to start debugging, Unexpected GDB output" 错误,并伴随着类似信息 "d:/xx/: No such file or directory",通常意味着GDB(GNU调试器)无法到指定的工作目录 (`d:/xxx`)。这可能是由于路径错误、文件不存在或者VSCode配置的问题解决这个问题的步骤可以包括: 1. **检查路径**:确保 `d:/xxx` 路径下的文件确实存在。如果不存在,你需要创建它或者修改调试配置中的工作目录。 2. **更新VSCode配置**:检查你的launch.json 文件,这是VSCode调试配置的主要文件,确认`program` 和 `cwd`(当前工作目录)设置是否正确。比如: ``` { "name": "C++ Debug", "type": "cppdbg", "request": "launch", "program": "${fileDirname}/${fileBasenameNoExtension}", "args": [], "cwd": "${workspaceFolder}", ... } ``` 确保`cwd`指向的是程序实际运行文件夹,而不是临的或不存在的路径。 3. **环境变量**:检查GDB命令行是否有相关的环境变量设置,如`GDB_PATH`或`PWD`,它们可能影响了GDB对目录的理解。 4. **清除缓存**:重启VSCode并尝试清除调试器的缓存,有旧的配置可能导致问题。可以在用户设置里搜索 "debugger.gdbpath" 或 "debuggerPath" 来清理相关配置。 5. **更新GDB版本**:有候,特定版本的GDB与VSCode集成可能出现兼容性问题,你可以试试升级或降级GDB。 如果以上都排查无果,建议查看VSCode的官方文档、社区论坛或开发者帮助中心,寻更多解决方案。如果你有具体的VSCode配置或项目结构,可以提供更详细的
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值