我已经安装了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?


当前回答

如果你只想切换一次,使用这个

nvm use 12.x

否则,如果您想切换默认节点版本,则使用

nvm use default 12.x 

or

nvm alias default 12.x

其他回答

如果你只想切换一次,使用这个

nvm use 12.x

否则,如果您想切换默认节点版本,则使用

nvm use default 12.x 

or

nvm alias default 12.x

(这里是nvm维护者)

NVM别名默认6.11.5如果你想把它固定到特定的版本。

你也可以做nvm alias default 16或nvm alias default node。

无论哪种方式,您都希望升级到nvm的最新版本(撰写本文时为v0.39.2)

# nvm set default node.js version 16.14.2
$ nvm alias default 16.14.2
$ nvm use

$ node -v
# v16.14.2

假设要将默认版本设置为10.19.0。

nvm alias default v10.19.0

但它会给出如下错误

! WARNING: Version 'v10.19.0' does not exist.
default -> v10.19.0 (-> N/A)

在这种情况下,您需要按以下顺序执行两个命令

# Install the version that you would like 
nvm install 10.19.0

# Set 10.19.0 (or another version) as default
nvm alias default 10.19.0

因为上面有很多关于默认别名的答案,有人仍然不能在新终端上得到正确的版本,我的答案在这里。

当您在shell rc文件(如~/.bashrc)中添加源$NVM_DIR/nvm.sh时,它将首先检查$ path环境变量中是否有nvm版本的节点路径,如/usr/local/nvm/versions/node/v14.1.0/bin。如果有,nvm将不使用默认别名。

所以首先你应该检查为什么在$ path中有节点路径。如果你能找到原因(比如在另一个rc文件或脚本文件中显式地运行nvm use 16),就删除它。

如果你找不到理由,或者只想留着它,那么另一个解决办法是:

# that's your previous usage, keep it
source $NVM_DIR/nvm.sh

# FORCE to use default alias
nvm use default

# or if you prefer to forcedly use .nvmrc prior to default, then
test -f .nvmrc && nvm use || nvm use default

在我的情况下,Windows 11, nvm 1.1.9和使用gitbash

这些为我工作(必须以管理员身份运行)

(最新版本)

NVM使用最新

(特定版本)

NVM使用18.10.0

这些对我不起作用

NVM use 18 -> return node vv18.10.0(64位)未安装或找不到。

nvm使用default 18 ->返回无法识别的版本:"default"

NVM别名…—本NVM版本不支持> alias命令

希望对大家有所帮助:)