除了系统节点,我不能在 nvm 中使用节点

i cant use node in nvm except for system node

我在 nvm 中使用节点时遇到问题

进入后可以看到我的节点nvm ls

        v9.11.2
       v14.16.1
        v16.0.0
     ->  system

然后,我输入 nvm use 14,打印出 Now using node v14.16.1 (npm v6.14.12)

然而,当我输入 node -v

它打印出 -bash: /home/pi/.nvm/versions/node/v14.16.1/bin/node: No such file or directory

然后,当我输入 nvm ls 时,我找不到指向我当前节点的箭头。(箭头消失了)

        v9.11.2
       v14.16.1
        v16.0.0
         system

除系统节点外出现此问题

此外,如果我手动进入该目录,我可以找到该节点文件。 我该如何解决这个问题?

我目前正在使用 rpi4 和 rasberry pi OS(aarch64)。

+) 我每次重启电脑都要输入nvm use system

遇到此问题的人找到了解决方法并将其发布到关于此问题的 GitHub 问题。

最初由@Ratstail91 发表于https://github.com/nvm-sh/nvm/issues/2458#issuecomment-854910734:

我没有真正的解决方案 - 但我想我找到了原因。 运行 在您的 raspberry pi 4 上执行以下命令:

uname -m

如果这显示 aarch64 或类似的,那么 nvm 也认为 raspberry pi 是 64 位的,并尝试下载 64 位版本的节点。 Node 的 32 位构建仍然可以正常工作,但出于某种原因,64 位构建以这种非常不寻常的方式失败。

我唯一真正的答案是从这里下载“Linux Binary - ARMv7”:

https://nodejs.org/en/download/current/

放在系统路径下。它不优雅,但理论上应该可以工作。