vscode 必须从 wsl 终端执行 code . 才能正确识别 wsl 中的 node.js;runtimeexecutable 应留空或设为 wsl 路径,禁用 windows 路径;npm/pnpm 需在 wsl 全局安装,并确保 shell 初始化配置生效。

VSCode 能直接用 WSL 里的 Node.js,但必须让 VS Code 启动时“看见”它——不是装了就行,而是路径、启动方式、调试器三者必须对齐。
code 命令必须从 WSL 终端里执行
这是最常被跳过的一步。VS Code Windows 安装版自带的 code 命令,只有在 WSL 里运行才能把当前 Shell 环境(含 PATH、node 路径、nvm/fnm 切换状态)完整传给 VS Code。
- 别在 Windows 的 CMD/PowerShell 里输
code .——它只会找 Windows PATH 下的 Node,根本不知道 WSL 里装了什么 - 正确做法:打开 Ubuntu(或其他发行版)终端,cd 进项目目录,再执行
code . - 如果提示
command not found: code,说明 VS Code 没勾选安装时的 “Add to PATH”,重装或手动在 WSL 里运行sudo apt install code(不推荐),更稳妥的是去 VS Code 官网下载 Linux 版并配置 symlink
launch.json 里 runtimeExecutable 不要硬写绝对路径
WSL 的文件系统路径(如 /home/user/project)和 Windows 的 C:\ 是隔离的,调试器默认走的是 WSL 环境,所以 runtimeExecutable 写成 /usr/bin/node 或留空即可,写成 C:\Program Files\nodejs\node.exe 必然失败。
使用一条命令部署ProbeChain Rydberg测试网代理节点。自动注册为Agent(NodeType=1),免gas,支持macOS/Linux/Windows。触发词:/r
- 留空最安全:
"runtimeExecutable": null或直接删掉这一行,让调试器走PATH查找 - 如果用了 nvm,且想锁定版本,写成
"runtimeExecutable": "/home/yourname/.nvm/versions/node/v20.15.0/bin/node"(用which node确认真实路径) - 绝对不要写 Windows 路径,哪怕加了
/mnt/c/...前缀——WSL 调试器不识别这种跨层映射
npm 和 pnpm 在 WSL 里必须全局安装
VS Code 的 Tasks(比如 npm run dev)和 Extensions(如 ESLint、Prettier)依赖的是 WSL 终端里能直接调用的命令,不是 Windows 的。
- 在 WSL 终端里运行
npm install -g pnpm,不是 Windows 的 PowerShell - 验证:关掉所有终端,新开一个 WSL 终端,输入
pnpm -v,有输出才算成功 - 如果用了
fnm或volta,确保它们的 shell 初始化代码已写入~/.bashrc或~/.zshrc,否则code .启动的 VS Code 就读不到
真正卡住人的地方不在安装,而在路径归属意识——WSL 是独立 Linux 环境,不是 Windows 的子目录。你把项目放在 /home/user/myapp,就全程用 WSL 的 Node、npm、VS Code;放在 /mnt/c/Users/xxx/project,就得用 Windows 的 Node,否则符号链接、权限、换行符全会出问题。










