vscode本身不提供node.js运行时,必须独立安装并确保其被正确识别;需在vscode终端执行node -v和npm -v验证,失败主因是path未继承或program路径未用${workspacefolder}前缀。

VSCode 本身不提供 Node.js 运行时,必须先独立安装 Node.js,再让 VSCode 正确识别它 —— 否则所有调试、运行、终端命令都会失败。
node -v 在系统终端能跑,但在 VSCode 终端报 command not found
这是最常见也最容易被误判的问题:不是 VSCode 坏了,而是它没拿到你 shell 里已生效的 PATH。
- macOS/Linux:GUI 启动的 VSCode(比如从 Dock 点开)不会自动执行
~/.zshrc或~/.bash_profile,所以which node在终端有结果,VSCode 里却找不到 - Windows:Node.js 安装时没勾选
Add to PATH,或系统环境变量没刷新,导致 VSCode 继承的是旧 PATH - 验证方式只有一种:在 VSCode 内置终端(
Ctrl + `)里直接敲node -v和npm -v,有输出才算真正就绪 - 解决办法:
- macOS/Linux:关掉所有 VSCode 窗口 → 打开终端 → 执行
source ~/.zshrc(或对应 shell 配置)→ 再运行code .启动 VSCode - Windows:右键“此电脑” → “属性” → “高级系统设置” → “环境变量”,把
C:\Program Files\nodejs\加进“系统变量”的PATH,然后彻底重启 VSCode
- macOS/Linux:关掉所有 VSCode 窗口 → 打开终端 → 执行
launch.json 中 program 字段总指向失败
断点变灰色、提示 Cannot launch program,90% 是因为 program 没写对路径 —— 它必须是项目内一个真实存在的 .js 文件的绝对路径表达式。
使用一条命令部署ProbeChain Rydberg测试网代理节点。自动注册为Agent(NodeType=1),免gas,支持macOS/Linux/Windows。触发词:/r
- 正确写法:
"program": "${workspaceFolder}/index.js"(推荐,跨平台且安全) - 错误写法:
"program": "index.js"(VSCode 不会自动补前缀,等同于当前工作目录下的index.js,但实际可能在子目录) - 错误写法:
"program": "./src/server.js"(.在这里不解析为相对路径,只是字符串字面量) - 如果你用 TypeScript 或 ESM,别直接指
.ts文件;要么配preLaunchTask编译后指向dist/index.js,要么改用runtimeExecutable: "npx"+runtimeArgs: ["ts-node", "src/index.ts"]
用 Code Runner 插件一键运行却报错 import/export 语法不支持
Code Runner 默认调用 node filename.js,而 Node.js 14+ 对 import 语句默认拒绝,除非明确声明模块类型。
- 根本原因:项目根目录的
package.json缺少"type": "module" - 临时绕过(不推荐长期用):在 VSCode 设置里搜
code-runner.executorMap,把javascript对应值改成:"node --experimental-specifier-resolution=node $fileName" - 正确做法:在
package.json里加一行:"type": "module",然后确保所有import路径带扩展名(如import { foo } from './utils.js') - 注意:
code-runner不读package.json的type字段,所以即使写了"type": "module",仍需手动改 executorMap 或换用官方调试器
真正卡住人的地方从来不是“怎么装”,而是“装完后 VSCode 没继承环境变量”和“launch.json 路径写成字面量”。这两处一旦出错,所有后续操作都像在黑盒里试错。动手前,先在 VSCode 终端确认 node -v 能跑,再检查 program 字段是否用了 ${workspaceFolder} —— 其他都是枝节。










