在 PATH 上找不到运行时“节点”-Visual Studio Code 和 Node.js
Posted
技术标签:
【中文标题】在 PATH 上找不到运行时“节点”-Visual Studio Code 和 Node.js【英文标题】:Cannot find runtime 'node' on PATH - Visual Studio Code and Node.js 【发布时间】:2016-10-15 20:18:17 【问题描述】:下载并安装了 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 中理解和解决这个问题。
【问题讨论】:
正确安装后,您应该已经在 PATH 下拥有node
和 npm
。您使用的是什么操作系统,您是如何安装它们的?
是的,我就是这么想的。我在 Windows 10 上。我去了这里 -nodejs.org/en/download 并将 Windows 二进制文件下载到我的工作文件夹中。然后,我使用 VSC 中的命令行来检查 node --help 是否有效,并且确实有效。但是当我按 F5 调试 .js 文件时,我得到了这个错误。如果我错过了一步,请纠正我。谢谢
以防其他人遇到我的问题:退出并重新打开为我解决了这个问题。
【参考方案1】:
首先以超级用户身份运行以下命令
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"
命令的输出。
在调试模式下运行服务器 干杯
【讨论】:
天才。还要提一下,使用 nvm 安装节点是一个好习惯。 运行后得到这个:" sudo: code: command not found"'【参考方案2】:在 OSX 和 VSCode 1.56.2 上,我所要做的就是关闭并重新启动 VSCode,问题就消失了。
【讨论】:
我必须重新运行Shell command: Install 'code' command in PATH.
才能重新启动 VSCode:(CMD+SHIFT+P 并开始输入命令名称)
这是正确的(就我而言)。可悲的是,我已经多次遇到这种情况,并且我一直在回复您的答案。谢谢@大卫
似乎是最近的一个错误。这在 OSX Catalina 上为我解决了这个问题
哇,真的。这适用于 VSCode 插件 jest-runner。
我尝试重新启动 VSCode,但这对我不起作用。重新启动我的电脑工作。我也在 M1 Mac 上使用 MacOS big sur【参考方案3】:
为了跟进,我也遇到了这个问题。当我安装 Node.js 时,有一个选项说 Add to PATH (Available After Restart)。似乎 Windows 只需要重新启动就可以正常工作。
【讨论】:
在不向 PATH 中添加节点的情况下,便携式设置怎么样,有没有办法解决这个问题,对我来说似乎是一个可怕的限制。] 这是我的问题。我通过启动一个新的命令提示符并从命令提示符启动 vs code 避免了重新启动 在windows上配置PATH需要重启(安装向导中提到)【参考方案4】:对我有用的快速修复。从命令行 (cmd) 导航到文件夹的根目录。然后进入根目录后,输入:
code .
然后,按回车键。注意“.”,不要忘记。现在尝试调试,看看是否出现同样的错误。
【讨论】:
这对我有用。谢谢!你能解释更多吗?【参考方案5】:我在我的终端上做了which node
:
/usr/local/bin/node
然后我添加了
"runtimeExecutable": "/usr/local/bin/node"
在我的 json 文件中。
【讨论】:
【参考方案6】:所以节点被踢出路径。你可以做
SET PATH=C:\Program Files\Nodejs;%PATH%
或者简单地重新安装节点来解决这个问题。您认为对您来说最简单的方法
【讨论】:
感谢您的快速提示!如果我设置路径,我是否在命令提示符中写出确切的行?还是在一个文件中?感谢您的指导。 这可以通过命令行编写,请注意路径中可能需要双引号 今晚我会试一试。再次感谢您的快速帮助! 这太有趣了 - 感觉昨晚 6:00 pm,我让我的 windows 10 笔记本电脑进入睡眠状态。今天早上 8 点 44 分将其唤醒,并再次尝试 F5 我的 javascript 文件。现在调试器可以工作了。看起来路径像你说的那样关闭了,但似乎应用程序自己更正了......?奇怪。【参考方案7】:对我来说,node
二进制文件在 PATH
中,我可以从终端(iTerm 或终端)运行它,并且终端应用程序设置为使用 zsh
如果您使用的是 Mac、iTerm 和 Zsh,请使用以下 VSCode 设置以使 Node 工作。
进行此更改后,您可以从 launch.json
配置文件中删除此行。 (VSCode中的调试设置)
"runtimeExecutable": "/usr/local/bin/node"
如果这不起作用,请确保将默认 shell 选择为 zsh
。为此,
使用 Cmd+Shift+P
打开命令面板查找Terminal: Select Default Shell
命令
从选项中选择zsh
【讨论】:
【参考方案8】:有同样的问题,在我的情况下,这是 vs code 扩展的问题。尝试运行代码:
$ code --disable-extensions
在编辑器中,我在调试模式下运行我的程序并工作,然后开始代码
$ code
它继续正常工作。
希望它对你有用。
【讨论】:
更新到 macOS Catalina 后,这是唯一对我有用的东西。谢谢! 这是迄今为止唯一对我有用的解决方案。【参考方案9】:我在 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"
【讨论】:
【参考方案10】:通过 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 才能正常启动节点目标。
【讨论】:
老兄,你救了我的命,我相信这是造成这个问题的主要原因,奇怪的是 VScode 开发人员刚刚在 GitHub 上锁定了这个问题。【参考方案11】:我使用/bin/zsh
,并更改了 vscode 以执行相同的操作,但不知何故 vscode 仍然使用来自/bin/bash
的路径。所以我创建了一个 .bash_profile 文件,路径中有节点位置。
只需在终端中运行:
echo "PATH=$PATH
export \$PATH" >> ~/.bash_profile
重启vscode,就可以了。
【讨论】:
【参考方案12】:我也遇到了这个错误。重启电脑对我有用。
【讨论】:
它无关紧要,它与您需要重新启动的会话有关:您只需注销然后重新登录。无需重启电脑【参考方案13】:我收到此错误的原因是尝试新的预发布 VSCode JS 调试器。
如果您选择加入,请通过用户设置进行更改:
"debug.javascript.usePreview": true|false
我的正常配置和集成终端中的所有内容都是正确的,并且可以找到可执行文件。我浪费了很多时间尝试其他事情!
【讨论】:
我正在使用 vscode Insiders 版本 1.46.0-insider,但我必须将其设置为false
以使调试器达到断点。我正在使用 jasmine-test-explorer。现在我只需要弄清楚为什么没有从我的 NVM 安装中获取节点版本;相反,它使用的是带有 vscode 的捆绑节点版本。
嗯,在这种情况下,您可以尝试指定 runtimeVersion
以匹配您正在使用的 Node 环境。其他人还说从命令行启动代码可以更可靠地获取环境,例如cd project
然后code-insiders .
debug.javascript.usePreview
从 VSCode 1.60.0 开始不再可用。查看This answer中有关如何使用旧版调试器的选项【参考方案14】:
不要从开始菜单单独启动 VS 代码。使用
$代码。
启动 VS 代码的命令。现在,创建扩展名为 .js 的文件并开始调试 (F5) 它。它将被执行。
否则,请重新启动系统并执行相同的过程。
【讨论】:
【参考方案15】:我在禁用ESLint
扩展后解决了这个问题。
【讨论】:
【参考方案16】:我在 OSX 上,这对我不起作用:
code . --user-data-dir='.'
但这确实有效:
code . -data-dir='.'
【讨论】:
【参考方案17】:这是根据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 调试生成的启动配置
【讨论】:
【参考方案18】:我也遇到过这个问题。做了以下操作,它得到了修复。
-
打开您的计算机终端(不是 VSCode 终端)并键入 node --version 以确保您已安装节点。如果没有,则使用nvm 安装node。
然后转到您的 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"
-
如果您有多个 bash 文件,请确保将 PATH 添加到所有文件中。
重启你的 VSCode 终端应该没问题。
【讨论】:
【参考方案19】:(CMD+SHIFT+P) Shell 命令:在 PATH 中安装 'code' 命令
应该做的伎俩!
【讨论】:
以上是关于在 PATH 上找不到运行时“节点”-Visual Studio Code 和 Node.js的主要内容,如果未能解决你的问题,请参考以下文章
在 Visual Studio Code for Mac 上找不到任何 CSX 文件
Visual Studio 在 Windows 7 64 位机器上找不到 CIODMLib 项目参考
在 Windows 11 上找不到任何已安装的 .NET Core SDK(Visual Studio 代码)
MissingPluginException(在通道 plugins.flutter.io/path_provider 上找不到方法 getApplicationDocumentsDirectory
在 java.library.path 上找不到基于 APR 的 Apache Tomcat 本机库
java.lang.ClassNotFoundException:在路径上找不到类“app path”:/data/app/