参考资料: VS Code入门教程2020 #24 介绍launch.json
launch.json配置文件
{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "Python 调试程序: 当前文件", "type": "debugpy", "request": "launch", "program": "${file}", "console": "integratedTerminal" } ] }
"configurations"是一个数组,对应多个配置项(字典)。每个配置项对应一个具体环境的配置。
“name”,“type”,"request"是通用参数,任何编程语言都有。
"name"是给配置项起一个易于理解的名字,方便后面在调试时,通过下拉列表切换配置项。
“type"指定的是编程环境,如python对应type是"debugpy”。
“request"指定的是调试模式,具体值只能是"launch"或者"attach”。
1.手动通过命令行工具启动应用程序:例如
python xxx.py
,缺点是程序没有配有调试器,因此不支持断点调试,即打了断点,通过这种方式运行,遇到断点仍会继续执行。
2.通过launch启动应用程序:vscode会先去launch.json文件中寻找request值是launch的配置项。并根据配置项生成启动命令。同时默认会为程序搭配一个调试器。然后再运行程序。所以这种方式下,程序支持断点调试。
3.通过attach进程添加调试器:有些应用程序启动后是不会结束执行的(通常是Web服务)。这时候想在不中止程序的情况下对程序进行调试。这时候就可以再运行一个attach进程,attach进程会为正在运行的程序生成一个调试器,此时程序就支持断点调试了。
4.注意:在菜单栏-Run中,Start Debugging
对应通过launch启动应用程序
。而Run Without Debugging
则对应通过launch启动应用程序
,但是不再为程序配置调试器,因此也就不支持断点调试。