任何人都可以解释一下,当我执行 node --version
时,我如何获得一个未出现在 nvm -ls
输出中的 Node 版本?
glaucon@polo /media/poloextra/dev/souvenir $ node --version
v7.10.0
glaucon@polo /media/poloextra/dev/souvenir $ nvm ls
v4.2.2
v5.5.0
v7.7.2
v8.0.0
-> system
default -> stable (-> v8.0.0)
node -> stable (-> v8.0.0) (default)
stable -> 8.0 (-> v8.0.0) (default)
iojs -> N/A (default)
自从我使用 Node 以来已经有一段时间了,我想我可能误解了 nvm 的工作原理。我想如果安装了某个版本的 Node,那么它会出现在 nvm ls
输出
EDIT1:响应评论 which -a node
的输出是:
glaucon@polo /media/poloextra/dev/souvenir $ which -a node
/usr/local/heroku/bin/node
/home/glaucon/.nvm/versions/node/v8.0.0/bin/node
/usr/local/bin/node
/usr/bin/node
最佳答案
(这里是 nvm 维护者)这是故意的; nvm ls
(和 nvm current
)输出您正在使用“系统” Node ;它恰好是v7.10.0
。如果您运行 nvm use node
,您将使用最新的 nvm 安装版本,该版本似乎是 v8.0.0(基于您的 nvm ls
输出)。
您还可以运行nvm alias default node
,每次获取nvm.sh
时(即当您打开终端时),它将自动使用最新版本。
关于node.js - nvm 和 node --version 不一致?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46760235/