我已经安装了nvm (ubuntu with zsh shell),有两个节点版本:v6.11.5和v9.0.0, nvm中的默认版本是v9.0.0

每次我都需要改变节点版本

$ nvm list
         v6.11.5
->       v9.0.0
         system
default -> node (-> v9.0.0)
node -> stable (-> v9.0.0) (default)
stable -> 9.0 (-> v9.0.0) (default)


$ nvm v6

如何将nvm默认版本更改为v6.11.5?


当前回答

当前的答案并没有解决我的问题,因为我在/usr/bin/node和/usr/local/bin/node中安装了node -所以系统总是首先解决这些问题,而忽略了nvm版本。

我通过将现有版本移动到/usr/bin/node-system和/usr/local/bin/node-system来解决这个问题

然后我就没有node命令了,直到我使用nvm use:(

我通过创建一个指向nvm将要安装的版本的符号链接解决了这个问题。

sudo mv /usr/local/bin/node /usr/local/bin/node-system    
sudo mv /usr/bin/node /usr/bin/node-system 
nvm use node
  Now using node v12.20.1 (npm v6.14.10)
which node
  /home/paul/.nvm/versions/node/v12.20.1/bin/node
sudo ln -s /home/paul/.nvm/versions/node/v12.20.1/bin/node /usr/bin/node

然后打开一个新的shell

node -v
  v12.20.1

其他回答

nvm别名默认v14.17.5

   mazin ~  nvm ls
           v10.15.1
    ->     v12.19.0
           v14.17.5
           v16.14.0
    default -> 12 (-> v12.19.0)
    node -> stable (-> v16.14.0) (default)
    stable -> 16.14 (-> v16.14.0) (default)
    iojs -> N/A (default)
    unstable -> N/A (default)
    lts/* -> lts/gallium (-> v16.14.0)
    lts/argon -> v4.9.1 (-> N/A)
    lts/boron -> v6.17.1 (-> N/A)
    lts/carbon -> v8.17.0 (-> N/A)
    lts/dubnium -> v10.24.1 (-> N/A)
    lts/erbium -> v12.22.10 (-> N/A)
    lts/fermium -> v14.19.0 (-> N/A)
    lts/gallium -> v16.14.0

     mazin ~  nvm use 14
    Now using node v14.17.5 (npm v8.7.0)

     mazin@zhihongtongxue  ~  nvm ls
           v10.15.1
           v12.19.0
    ->     v14.17.5
           v16.14.0
    default -> 12 (-> v12.19.0)
    node -> stable (-> v16.14.0) (default)
    stable -> 16.14 (-> v16.14.0) (default)
    iojs -> N/A (default)
    unstable -> N/A (default)
    lts/* -> lts/gallium (-> v16.14.0)
    lts/argon -> v4.9.1 (-> N/A)
    lts/boron -> v6.17.1 (-> N/A)
    lts/carbon -> v8.17.0 (-> N/A)
    lts/dubnium -> v10.24.1 (-> N/A)
    lts/erbium -> v12.22.10 (-> N/A)
    lts/fermium -> v14.19.0 (-> N/A)
    lts/gallium -> v16.14.0

     mazin ~  nvm alias default 14
    default -> 14 (-> v14.17.5)

     mazin ~  nvm ls
           v10.15.1
           v12.19.0
    ->     v14.17.5
           v16.14.0
    default -> 14 (-> v14.17.5)
    node -> stable (-> v16.14.0) (default)
    stable -> 16.14 (-> v16.14.0) (default)
    iojs -> N/A (default)
    unstable -> N/A (default)
    lts/* -> lts/gallium (-> v16.14.0)
    lts/argon -> v4.9.1 (-> N/A)
    lts/boron -> v6.17.1 (-> N/A)
    lts/carbon -> v8.17.0 (-> N/A)
    lts/dubnium -> v10.24.1 (-> N/A)
    lts/erbium -> v12.22.10 (-> N/A)
    lts/fermium -> v14.19.0 (-> N/A)
    lts/gallium -> v16.14.0

nvm别名默认为16(其中“16”是你想使用的版本),但如果你从https://nodejs.org/en/download/安装节点之前,我会建议你先删除它。对于m1或m1专业芯片,我建议您遵循以下解决方案:https://www.youtube.com/watch?v=fULL8QiPEU4

这将默认设置为节点的最新版本

nvm alias default node

然后你就得跑了

nvm use default

或者退出并打开一个新标签

这对我来说很有效。

nvm use default v16

这对我没有任何帮助

nvm alias default v16

警告:此答案仅适用于MacOS

假设你的nvm中有两个版本的nodeJS,分别是v13.10.1和v15.4.0

而且, V15.4.0是默认的

> nvm list
       v13.10.1
->      v15.4.0
         system
default -> 15.4.0 (-> v15.4.0)

并且,您希望将默认值切换到v13.10.1

在Mac终端上执行以下步骤:

执行如下命令: NVM别名默认为13.10.1

这将使v13.10.1的默认指向…

default -> 13.10.1 (-> v13.10.1)

打开终端的新实例。现在检查这里的节点版本…

节点- v

你会得到…

v13.10.1

NVM列表也会显示新的默认版本。 nvm列表

只是一个信息:上面例子中的NodeJS版本会有不同的npm版本。你可以通过运行npm -v在终端中交叉验证它