VSCode配置调试环境_launch.json与settings.json区别

轻浩酱_4539

轻浩酱_4539

2026-04-08

751人浏览

原创

launch.json 专用于调试配置,必须放在 .vscode 目录下,定义启动方式、环境变量等;settings.json 仅控制编辑器行为,不参与调试逻辑。

vscode配置调试环境_launch.json与settings.json区别

launch.json 是干调试的,settings.json 是管编辑器行为的

很多人一上来就往 settings.json 里塞调试参数,结果断点不生效、launch 按钮灰掉——因为 VSCode 的调试逻辑完全不读 settings.json 里的调试相关配置。所有启动方式、环境变量、程序入口、端口监听这些,必须写在 .vscode/launch.json 里。而 settings.json 只影响编辑器本身:比如字体大小、是否自动保存、文件编码、格式化工具路径等。

launch.json 必须放在 .vscode 目录下,且只对当前项目生效

launch.json 不是全局配置,它只在当前工作区根目录下的 .vscode/launch.json 路径才被识别。如果你把它放错位置(比如放在用户目录或子文件夹),VSCode 根本不会加载,调试面板里连配置项都看不到。

  • 正确路径:.vscode/launch.json
  • 错误路径:launch.json(项目根下无 .vscode)、src/launch.json、~/.vscode/launch.json
  • 一个 launch.json 可以定义多个 configurations,用 name 区分,比如 "name": "Python: Current File" 和 "name": "Node.js: Express"
  • 如果项目里没有 launch.json,点击调试面板的「创建 launch.json 文件」按钮会自动生成模板,别手动新建空文件

settings.json 里的调试相关字段基本无效

你可能会看到文档里提到 debug.node.autoAttach 或 debug.javascript.autoAttachFilter 这类设置,它们确实存在,但作用非常有限:仅控制“自动附加”这种特殊调试模式的行为,**不是用来替代 launch.json 的常规启动配置**。想跑一个带参数的 Python 脚本?想传 env 变量?想改 cwd?这些全得靠 launch.json 的 configurations 字段。

VSCode
VSCode

避免常见的 VSCode 错误——设置冲突、调试器配置和扩展冲突。

下载
  • settings.json 中的 python.defaultInterpreterPath 影响解释器选择,但它不决定调试时用哪个 interpreter——那个由 launch.json 里的 python 字段或 pyLaunch 类型配置决定
  • debug.javascript.usePreview 这类开关只影响 JS 调试器底层行为,不影响 launch 流程
  • 误把 args、env、program 写进 settings.json,VSCode 完全忽略,也不会报错

常见错误:launch.json 配置不匹配运行时环境

最典型的坑是语言扩展没装、类型写错、路径没转义,导致调试直接失败,报错信息却很模糊,比如 Could not resolve debug adapter 或 Cannot launch program because corresponding JavaScript file cannot be found。

  • 确认已安装对应语言的官方调试扩展:Python 扩展含 Python Debugger,JavaScript 需要 @vscode/js-debug,Go 需要 Go 扩展
  • type 字段必须小写且准确:"type": "python"、"type": "pwa-node"、"type": "go" —— 写成 PYTHON 或 node 都会失败
  • 路径字段如 program、cwd 推荐用 ${workspaceFolder} 变量,避免硬编码;Windows 下反斜杠 要写成 \ 或用正斜杠 /
  • Python 的 module 模式(如 "module": "http.server")和 program 模式不能混用;Node.js 的 pwa-node 类型不支持 outFiles,要用 sourceMaps + resolveSourceMapLocations

调试配置真正起效的地方只有 launch.json,而且它极其依赖扩展、类型声明和路径语义的精确匹配。哪怕多一个空格、少一个引号、变量名拼错,VSCode 都可能静默忽略整个 configuration。别猜,打开调试面板右上角的齿轮图标,选「Open launch.json」,对着报错信息一行行核对字段名和值类型。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

vscode

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2023.08.07

2255

5

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.23

3642

1

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

2023.10.13

1216

3

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

2025.09.10

4199

7

Node.js后端开发与Express框架实践
Node.js后端开发与Express框架实践

本专题针对初中级 Node.js 开发者,系统讲解如何使用 Express 框架搭建高性能后端服务。内容包括路由设计、中间件开发、数据库集成、API 安全与异常处理,以及 RESTful API 的设计与优化。通过实际项目演示,帮助开发者快速掌握 Node.js 后端开发流程。

2026.02.10

781

17

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

2023.06.20

4776

8

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.28

1415

5

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.03

1858

5

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

2023.08.17

10323

11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程