VSCode调试设置(launch.json)

背景介绍

不可否认,VSCode是一款非常好用的IDE,但是作为PyCharm和VSCode的同时使用者,总是感觉VSCode调试代码非常吃力。

在PyCharm中,对于不需要命令行输入参数的文件来说,只要点击右上角的小虫子就可以开始debug了。VSCode也差不多。

但是在需要命令行输入参数的情况下,两者差别就比较大了。PyCharm只要选择好环境,然后在代码界面右键选择Modify Run Configuration,然后在Parameters栏加入需要输入的参数即可。

问题描述

但是VSCode对应的选项是Debug using launch.json,进去之后是下面这个样

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python Debugger: Current File",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        }
    ]
}

对于萌新来说,直接就蒙了,这是个什么玩意儿?

问题分析

但其实懂了之后也很简单。这个文件其实就和上面PyCharm界面是一样的。每一个条目也许就对应里面的一栏,问题就出在PyCharm把所有条目都给你列出来了,要填的就填,不填的空着,但是launch.json只列出了一小部分条目,其他的需要你自己添加,但是怎么加,他没告诉你。

回看PyCharm的调试界面,其实最重要的就是四块内容:文件路径、传入参数、虚拟环境、

工作路径,只要在launch.json中添加了对应的这四块内容,那么就可以顺畅地Debug了。

解决方法

添加方法如下:

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python Debugger: Current File",
            "type": "debugpy",
            "request": "launch",
            "program": "sam2.py",
            "console": "integratedTerminal",
            "cwd": "/data/segment-anything-2",
            "pythonPath":"/data/anaconda3/envs/sam/bin/python3.10",
            "args":""
        }
    ]
}

program初始就有(剩下三个都需要自己添加),对应的是文件路径,改为需要调试的文件路径即可;

cwd对应的是工作路径;

pythonPath对应的是虚拟环境,填入想用的环境下的python解释器路径即可;

args对应传入参数,怎么用就不用说了。

这个时候再选择Debug using launch.json,就可以正常Debug了!

回答: 在VS Code中配置launch.json文件的环境,可以按照以下步骤进行操作。首先,打开task.json文件,找到需要修改的代码部分,将其注释掉而不是删除。然后,修改"label"和"command",其中"label"可以修改成任意名称,但需要与launch.json中的"preLaunchTask"相同。将"type"修改为"shell",然后删除"args"中的所有内容。最后,根据需要修改其他参数,如"cwd"、"problemMatcher"等。\[1\] 在launch.json文件中,可以根据需要进行以下配置。首先,了解"version"参数一般不需要修改。然后,根据添加的配置语言生成"type"参数。"request"参数一般不需要修改,它表示启动配置时的请求类型。"name"参数可以随意修改,用于在debug时生成一个易读的名字。"program"参数表示被测试的文件,"args"参数表示传递给程序的参数。"env"参数用于设置环境变量。"presentation"参数可以填写order、group、hidden等内容,用于控制显示方式。"preLaunchTask"参数表示在调试后执行的任务,与task.json中的"label"一致。"postDebugTask"参数与task.json中的"label"一致。\[2\] 在文件中,可以使用一些特殊的路径变量来引用文件路径。例如,"${userHome}"表示用户主文件夹的路径,"${workspaceFolder}"表示在VS Code中打开的文件夹的路径,"${file}"表示当前打开的文件,"${fileDirname}"表示当前打开文件的目录名,"${fileBasenameNoExtension}"表示当前打开的文件的基本名称,没有文件扩展名,"${cwd}"表示启动VS Code时任务运行器的当前工作目录等等。\[3\] 希望以上信息对您有所帮助。 #### 引用[.reference_title] - *1* [vscode配置C++环境: task.json+launch.json(Launch Configs插件辅助配置)](https://blog.csdn.net/sroman/article/details/129123761)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [ubuntu22.04下的vscode使用之--debug-配置lunch.json](https://blog.csdn.net/NotANumber123/article/details/125925974)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值