如何在VS Code的Python launch.json中设置调试cwd为指定模块目录
VS Code调试固定cwd到module1的配置方案
完全可以仅通过修改launch.json实现,无需改动生产代码,具体配置方法如下:
- 直接将
cwd字段设置为${workspaceFolder}/module1。${workspaceFolder}是VS Code内置变量,指代当前打开的工作区根目录(也就是你的ProjectXYZ),拼接上module1后,无论你打开哪个文件,调试时的cwd都会固定为ProjectXYZ/module1。
示例配置(以Python调试为例,其他语言可调整对应字段):
{ "version": "0.2.0", "configurations": [ { "name": "Debug Module1", "type": "python", "request": "launch", "program": "${file}", "cwd": "${workspaceFolder}/module1", "console": "integratedTerminal" } ] }
为什么${fileDirname}会出问题?
如果你的module1下还有子目录,打开子目录里的文件时,${fileDirname}会指向该子目录,而非module1的根目录,这就会导致模块导入路径错误,找不到依赖。而用${workspaceFolder}/module1则能始终锁定到module1的根目录,避免这类问题。
内容的提问来源于stack exchange,提问作者sean.net
相关产品推荐
相关产品推荐

