VSCode Bash Debug插件Linux下用户配置正常工作区配置无法运行
我使用的是VSCode的Bashdb扩展。
环境信息
- Ubuntu 20.04
- VSCode 1.56.2
- launch.json存放在
code/user路径下 - workspace.json存放在
code/Workspaces/1619293380488路径下
问题现象
- 运行视图中存在
bash-deb (User)配置,该配置定义在launch.json中,可正常启动运行 - 使用定义在workspace.json中、与launch.json完全相同的bash-deb(workspace)配置启动时,报错:
unable to determine workspace folder
预期结果
(workspace)级别的Bash Debug配置也应当可以正常运行。
补充说明
python和powershell的调试配置在(workspace)和(user)两种级别下均可正常工作- Windows环境下不存在
launch.json,通过F1快捷键调用launch.json时会直接跳转至workspace.code-workspace的configurations区域
两种配置文件中使用的配置内容一致,如下:
{ "type": "bashdb", "request": "launch", "name": "Bash-Debug", "program": "${file}" }
解决方案
这个问题由Bashdb扩展的实现逻辑导致:和Python、PowerShell的调试扩展不同,Bashdb不会自动从工作区配置中继承根目录参数,需要手动显式指定工作区路径,按以下步骤修改即可:
- 先确认你的
.code-workspace文件根节点下已正确配置folders字段,示例配置如下:
{ "folders": [ { "path": "你的项目根目录相对/绝对路径" } ], "launch": { "configurations": [ // 调试配置放在此处 ] } }
- 在Bashdb的调试配置中新增
cwd参数,指定为VSCode内置的${workspaceFolder}变量,修改后的完整配置如下:
{ "type": "bashdb", "request": "launch", "name": "Bash-Debug", "program": "${file}", "cwd": "${workspaceFolder}" }
修改后重启调试即可正常启动工作区级别的Bash调试配置。
内容的提问来源于stack exchange,提问作者Timo
相关产品推荐
相关产品推荐

