找不到运行时节点'在PATH上 - Visual Studio Code和Node.js

时间:2016-06-14 22:30:32

标签: node.js visual-studio-code

下载并安装了Visual Studio Code 1.2.1版本,并将64位版本的node.exe msi放在我的工作目录中(假设这是正确的),我们如何添加node和npm命令行工具我们的路径?我很难理解这句话。我们在哪里以及如何实施?我直接从此资源页面的顶部引用此要求 - https://code.visualstudio.com/Docs/runtimes/nodejs

由于我目前的情况,我在app.js文件中设置了一个断点。当我点击F5时,它会告诉我......

Cannot find runtime 'node' on PATH 

我完全迷失了在Visual Studio Code中理解和修复此问题。

19 个答案:

答案 0 :(得分:28)

为了跟进,我也遇到了这个问题。当我安装Node.js时,有一个选项说Add to PATH(重启后可用)。看起来像Windows只需要重新启动就能使事情发挥作用。

答案 1 :(得分:9)

首先以超级用户身份在命令下方运行 sudo code . --user-data-dir='.' 它将打开可视代码工作室,导入您的项目文件夹,并按如下所示设置launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "program": "${workspaceFolder}/app/release/web.js",
            "outFiles": [
                "${workspaceFolder}/**/*.js"
            ],
            "runtimeExecutable": "/root/.nvm/versions/node/v8.9.4/bin/node"
        }
    ]
}

runtimeExecutable的路径将是"which node"命令的输出。

以调试模式运行服务器 欢呼

答案 2 :(得分:9)

所以节点被踢出路径。你可以做到

       SET PATH=C:\Program Files\Nodejs;%PATH%

或者只需重新安装节点即可解决此问题。你认为哪个对你来说最容易

答案 3 :(得分:7)

快速修复对我有用。从命令行(cmd)导航到文件夹的根目录。然后,一旦进入根目录,请键入:

code . 

然后,按回车键。注意“。”,不要忘记它。现在尝试调试并查看是否收到相同的错误。

答案 4 :(得分:6)

对于我来说,node二进制文件位于PATH中,我可以从终端(iTerm或Terminal)运行它,并且终端应用程序设置为使用zsh

如果您在使用iTerm和Zsh的 Mac上,请使用以下VSCode设置使Node正常工作。

此更改之后,您可以从launch.json配置文件中删除此行。 (VSCode中的调试设置)

    "runtimeExecutable": "/usr/local/bin/node"

如果这不起作用,请确保选择默认外壳程序为zsh。为此,

  • 使用 Cmd + Shift + P

    打开命令选项板
  • 寻找Terminal: Select Default Shell命令 enter image description here

  • 从选项中选择zsh enter image description here

答案 5 :(得分:3)

我也遇到了这个错误。重启PC对我有用。

答案 6 :(得分:2)

在OSX和VSCode 1.30.0上,我要做的就是关闭并重新启动VSCode,问题就消失了。

答案 7 :(得分:2)

我收到此错误的原因是尝试使用新的预发布VSCode JS调试器。

如果您选择加入,请通过“用户设置”进行更改:

    "debug.javascript.usePreview": true|false

我的常规配置和集成终端中的所有内容都是正确的,并且可以找到可执行文件。我浪费了很多时间尝试其他事情!

答案 8 :(得分:1)

请勿从开始菜单单独启动VS代码。使用

  

$ Code。

命令启动VS代码。现在,创建扩展名为.js的文件,然后开始调试(F5)。它将被执行。

否则,请重新启动系统并遵循相同的过程。

答案 9 :(得分:1)

有同样的问题,在我的情况下,这是 vs代码扩展名的问题。尝试以以下方式运行代码:

$ code --disable-extensions

一旦在编辑器中,我便以调试模式运行程序并开始工作,然后使用

$ code

它继续正常工作。

希望它对您有用。

答案 10 :(得分:1)

我在Linux上使用zsh和nvm遇到了类似的问题,我通过在~/.profile中添加nvm初始化脚本并重新启动登录会话来解决此问题

export NVM_DIR="$HOME/.nvm" 
 [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm 
 [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

答案 11 :(得分:0)

(CMD+SHIFT+P) Shell 命令:在 PATH 中安装 'code' 命令

应该可以解决问题!

答案 12 :(得分:0)

通过 NVM 应用默认节点版本

我正在使用 macOS Big Sur 并通过 nvm 设置默认版本,通过运行以下命令为我解决了这个问题:nvm alias default 14(将 14 更改为您想要的默认版本).

请注意,node 在我的终端中运行良好(同时使用 zsh 和 bash),但在通过 vscode 调试器运行时不行,而且我在 ~/.zshrc 和 ~/.bash_profile 中已经有了以下配置在 nvm 中加载:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

直到我设置了默认的 Node 版本,vscode 才能很好地启动 Node 目标。

答案 13 :(得分:0)

我使用/bin/zsh,并且我将vscode更改为相同的方式,但是不知何故vscode仍使用/bin/bash中的路径。因此,我创建了一个.bash_profile文件,该文件在路径中具有节点位置。

只需在终端中运行:

echo "PATH=$PATH
export \$PATH" >> ~/.bash_profile

重新启动vscode,它将起作用。

答案 14 :(得分:0)

我也遇到了这个问题。进行了以下操作并解决了该问题。

  1. 打开计算机终端(不是VSCode终端),然后键入node --version以确保已安装节点。如果不是,则使用node安装nvm
  2. 然后转到您的bash文件(例如.bashrc,.bash_profile,.profile)并添加PATH:
 [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm 
 [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
  1. 如果您有多个bash文件,请确保将PATH添加到所有bash文件中。
  2. 重新启动VSCode终端,应该没问题。

答案 15 :(得分:0)

根据VS代码调试页面,这是解决方案。 这适用于我在Windows 10上的设置。

"version": "0.2.0",
"configurations": [
{
    "type": "node",
    "request": "launch",
    "name": "Launch Program",
    "program": "${file}"
}

解决方案在这里:

https://code.visualstudio.com/docs/editor/debugging

这是为Node.js调试生成的启动配置

答案 16 :(得分:0)

我在OSX上,这对我不起作用:

code . --user-data-dir='.'

但此DID起作用:

code . -data-dir='.'

答案 17 :(得分:0)

在禁用None扩展后,我解决了此问题。

答案 18 :(得分:0)

我在自己的终端机上做了which node/usr/local/bin/node

然后我添加了 "runtimeExecutable": "/usr/local/bin/node"在我的json文件中。