Mac中nvm切换node版本失败

Mac中使用 nvm 管理 node 版本,在使用指令:nvm use XXX 切换版本之后。

关闭终端,再次打开,输入 node -v 还是得到之前的 node 版本。

原因:

lihaili@192 ~ % nvm use 18.16.0
Now using node v18.16.0 (npm v9.5.1)

lihaili@192 ~ % nvm list
       v16.19.1
->     v18.16.0
default -> v16.19.1
node -> stable (-> v18.16.0) (default)
stable -> 18.16 (-> v18.16.0) (default)
iojs -> N/A (default)
lts/* -> lts/iron (-> N/A)
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.12 (-> N/A)
lts/fermium -> v14.21.3 (-> N/A)
lts/gallium -> v16.20.2 (-> N/A)
lts/hydrogen -> v18.18.2 (-> N/A)
lts/iron -> v20.9.0 (-> N/A)
lihaili@192 ~ % nvm alias default 18.16.0
default -> 18.16.0 (-> v18.16.0)

再查看

lihaili@192 ~ % nvm list
       v16.19.1
->     v18.16.0
default -> 18.16.0 (-> v18.16.0)
node -> stable (-> v18.16.0) (default)
stable -> 18.16 (-> v18.16.0) (default)
iojs -> N/A (default)
lts/* -> lts/iron (-> N/A)
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.12 (-> N/A)
lts/fermium -> v14.21.3 (-> N/A)
lts/gallium -> v16.20.2 (-> N/A)
lts/hydrogen -> v18.18.2 (-> N/A)
lts/iron -> v20.9.0 (-> N/A)

在这里这个 default 中有个 node 的版本号,使用 nvm use 时,没法修改这个版本号。

解决方案:

使用 nvm alias default XXX 指令设置默认 node 版本。

目前看来,Mac 中通过 nvm 长期有效的切换 node 版本可能需要两个指令:

1,nvm use XXX(只对当前终端窗口有效)

2,nvm alias default XXX(长期有效,即使关闭终端窗口后,再打开一个新的终端窗口)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容