发布于2026-07-10 阅读(0)
扫一扫,手机访问
VSCode调试启动失败的罪魁祸首,其实就那么几个——launch.json里configurations是空的、program路径指向了空气,或者是type字段对应的调试插件根本没装上。这本来不是什么复杂的配置问题,但偏偏这几步绊倒了多数人。我们先说最核心的几个关键点:configurations绝对不能空着,program必须是${workspaceFolder}下面真实存在的可执行文件路径,而且type必须和已经装的调试器严格匹配。

说实话,VSCode调试启动失败,九成的情况都是因为program路径写错了、configurations字段是空的,或者type对应的调试插件干脆没装。配置本身真不算难,但只要这几处关键字段没对上,一切免谈。
有时候你点了“开始调试”,VSCode却毫无反应,或者直接弹窗报“无法找到有效的启动配置”。这种情况,十有八九是configurations字段压根儿没写,或者写成了空数组[]。
.vscode/launch.json文件存在,而且顶层结构是"configurations": [ ... ]"type"、"request"、"name"这三个字段configurations块删掉了,只留下{}或空文件,那配置就无效了program这个字段,它不是指向“当前打开的文件”,也不是.vscode/目录下的相对路径。它必须是一个相对于项目根目录的、真实存在的可执行文件路径。而项目根目录,就是${workspaceFolder}这个变量所代表的位置。
"${workspaceFolder}/dist/index.js"(编译后的版本),而不是"./src/index.ts"——TypeScript源码没法直接运行.ts文件,那就得配置"type": "pwa-node"并加上"runtimeExecutable": "./node_modules/.bin/ts-node""C:\project\index.js")千万不要用,换个机器就崩。一律用${workspaceFolder}变量/,不要用反斜杠这两者的本质区别在于:谁先启动进程。launch是让VSCode自己创建新进程并注入调试器;attach则是连接到已经运行起来的进程。选错了,要么连不上,要么断点根本不生效。
index.js、main.py)应该用"request": "launch",当然也得提供program"request": "attach"。这样每次改代码都不需要重启整个调试会话attach模式下,目标进程启动时必须加上--inspect-brk参数,而且port字段必须与launch.json中的"port": 9229完全一致--inspect=0.0.0.0:9229断点在.ts文件上设置后却不停下来,这不是VSCode本身的问题,而是sourcemap没有被正确识别或加载。
tsconfig.json中开启"sourceMap": true,同时关掉inlineSourceMap"sourceMaps": true和"outFiles": ["${workspaceFolder}/dist/**/*.js"]dist/index.js.map这个文件是否真实存在,而且它里面的sources字段指向的是你workspace里的.ts路径(例如["../src/index.ts"])"resolveSourceMapLocations": ["${workspaceFolder}/**", "!**/node_modules/**"]有一个容易被忽略的点,其实是cwd和env这两个字段。比如Python的导入失败、Node.js找不到.env文件、读取文件时路径出错,往往不是program本身有问题,而是cwd没有设置成${workspaceFolder},或者PYTHONPATH、NODE_ENV这些环境变量没有通过env字段正常注入进去。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8