我按照以下步骤在wsl上安装了nodejs:
https://learn.microsoft.com/en-us/windows/dev-environment/javascript/nodejs-on-wsl
然后调试helloworld示例,如下所示:https://code.visualstudio.com/docs/nodejs/nodejs-tutorial _debugging-your-node-application
所以我只是在文件helloworld.js
在vscode工作空间目录的根包含:
var msg = 'Hello World';
console.log(msg);
在console.log
上有断点
然后在调试选项卡上单击">创建启动。json文件"这给了我默认的配置:
{
"type": "pwa-node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"program": "${workspaceFolder}/helloworld.js"
}
但是当我按下F5
时,活动栏调试按钮使*光点*但没有发生任何事情,也没有出现任何选项卡上的错误消息(集成终端,调试控制台,问题,输出)
只有当我指定vscode在哪里获得节点二进制路径添加到配置:
"runtimeExecutable": "/home/user01/.nvm/versions/node/v14.18.0/bin/node"
然后我让我的代码运行,并尊重我的断点。
我认为这可能是vscode无法在非交互式shell中找到路径的问题,所以我尝试在这里创建一个/etc/profile.d/nvm-autoload.sh
,如下所示:
# Enable nvm if available
if [ -f ~/.nvm/nvm.sh ]; then
source ~/.nvm/nvm.sh
fi
和runtimeExecutable
修复创建复杂,如果我想调试typescript文件,因为它需要tsc: build
作为preLaunchTask
我可以沿着tsc -w
运行我的typescript调试器,并获得preLaunchTask
的骑行,但我觉得有些东西是错误的地方,这是困扰我…
这个问题是由于我从Windows开始菜单启动Vscode时没有正确设置环境变量。
要使其工作,我必须从wsl终端启动vscode。
cd ~/my/project
# if needed
nvm use
code .
则launch.json
上述作品