至于如何SSH、docker以及无需参数的程序调试这篇就先不说了。本篇文章主要记录一下多参数多工作空间调试的问题。

一、launch.json文件

docker 运行coder vs docker部署vscode_docker 运行coder vs

项目名字为0的目录下的train.py文件时,我们会按顺序点1,2,然后创建生成仅一个launch.json文件3在项目ms下的.vscode目录下。此时json内容如右图4所示。

此时我们就可以随意的调试项目ms目录下的py程序。

但如果我们需要调试的程序如下类似,在项目ms目录下的某个文件夹内,我们就需要加上如下右图所示的

"cwd": "${workspaceFolder}/common/models"

docker 运行coder vs docker部署vscode_docker_02

 二、多参数bash运行的程序debug

docker 运行coder vs docker部署vscode_docker_03

如上图所示,我这个train.py需要这么多参数。

这时候我可以直接请教GPT,将bash内内容全部复制,再添加,GPT全部内容如下图:

生成调试该程序的launch.json内args的完整相应内容

docker 运行coder vs docker部署vscode_docker 运行coder vs_04

 GPT回答如下图:

docker 运行coder vs docker部署vscode_vscode_05

复制添加到上面的launch.json下面,如下图所示

docker 运行coder vs docker部署vscode_笔记_06

这样就直接直接点击左边的蜘蛛按钮调试bash运行的train.py程序了。

三、多工作空间,一般在远程ssh服务器或者docker容器内会出现这种情况

如下图所示,我这里docker容器内有两个工作空间1和2。如果此时我要调试2下面的3程序,我直接点3之后,再点左边的蜘蛛按钮,可能就不会像只有一个工作空间那样直接在此工作空间下面生成json。此时就只有上面1的空间有json文件。我就可以把上面空间的.vscode整个复制过来,然后内容按照上面的一、二大点做相应的调整就可以了。

docker 运行coder vs docker部署vscode_docker 运行coder vs_07

第二个工作空间的json改好之后,再点击调试,如下图,先要选择对应的内容,不然系统会默认第一个file.选好之后再点开始,就又可以开始调试了。

docker 运行coder vs docker部署vscode_docker_08

 参考文章:

如何在vscode中debug python代码,包括如何优雅地传入多个参数_vscode python debug-博客利用VScode连接远程服务器进行代码调试及可视化界面_vscode连接服务器运行代码