如何使用 NVM 设置默认节点版本?
How can the default node version be set using NVM?
我已经安装了两个节点版本的 nvm(ubuntu 和 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 维护者)
nvm alias default 6.11.5
如果您希望它与特定版本挂钩。
你也可以nvm alias default 16
.
无论哪种方式,您都需要升级到最新版本的 nvm
(撰写本文时为 v0.33.11)
$ nvm alias default 16.14.2
# nvm set default node.js version 16.14.2
$ 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
这会将默认设置为最新版本的节点
nvm alias default node
然后你需要运行
nvm use default
或退出并打开一个新标签
更改默认节点版本 nvm alias default 10.15.3
*
(用你的默认版本号替换我的版本)
您可以使用 nvm list
检查您的默认列表
你也可以这样:
$ nvm alias default lts/fermium
#100% 为我工作
按照此获取默认节点版本:
nvm install 12.13.1
then,
nvm alias default 12.13.1
如果您只想切换一次,请使用此
nvm use 12.x
否则,如果您想切换默认节点版本,请使用
nvm use default 12.x
或
nvm alias default 12.x
目前的答案并没有解决我的问题,因为我在 /usr/bin/node 和 /usr/local/bin/node 中安装了节点 - 所以系统总是先解决这些问题,而忽略了 nvm 版本。
我通过将现有版本移动到 /usr/bin/node-system 和 /usr/local/bin/node-system
解决了这个问题
然后我再也没有节点命令了,直到我使用 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
警告:此答案仅适用于MacOS
假设您的 nvm 中有 2 个版本的 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 alias default 13.10.1
这将使默认指向 v13.10.1 作为...
default -> 13.10.1 (-> v13.10.1)
- 打开终端的新实例。现在在这里检查节点版本...
node -v
你会得到...
v13.10.1
nvm list 也会显示新的默认版本。
nvm list
只是一个信息: 以上示例中的 NodeJS 版本将具有不同的 npm 版本。您可以在终端中通过 运行 npm -v
进行交叉验证
我尝试了投票最多的答案,但对我不起作用。
问题是我通过 brew 安装了另一个节点,NVM 将其识别为系统节点。 NVM 将系统节点优先于默认别名。我所要做的就是卸载系统节点 (brew uninstall node
)。
更改默认版本以使用最新的 LTS 版本
nvm alias default lts/*
您可以通过执行 nvm install lts/* --reinstall-packages-from=lts/*
或每周一次的 cron 作业来手动升级全局版本,如果您想使您的版本保持最新
--reinstall-packages-from=lts/*
用于重新安装您每次更改版本时拥有的全局包
nvm alias default 16
(其中“16”是您要使用的版本)但是如果您从 https://nodejs.org/en/download/ before I would suggest you remove it first. For m1 or m1 pro chips, I suggest you follow this solution: https://www.youtube.com/watch?v=fULL8QiPEU4
安装节点
对于那些在 VSCode 终端 中进行测试并且即使在 killing/restarting 终端之后仍然看到旧版本的人——VS 代码以某种方式缓存了旧版本。 Close/reopen 你的完整 VSCode window 并且你应该看到 node -v
的正确版本。
我在 运行 之后做了类似的事情 nvm install --lts
:
nvm alias default 'lts/*'
确保在全局安装了正确版本的节点。您的公司可能正在使用不同的版本。
首先检查可用版本
nvm list
然后使用
设置默认版本
nvm alias default lts/**
使用 NVM 的简要步骤
对于Mac
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.39.1/install.sh | bash
nvm install 16
nvm use 16
nvm alias default 16
npm install npm --global # Upgrade npm to the latest version
对于Linux
sudo apt install curl git
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install nodejs
对于Windows
Git's installer for Windows from below link
https://git-scm.com/download/win
node-v16.XX.XX-x64.msi from below link
https://nodejs.org/dist/latest-v16.x/
我已经安装了两个节点版本的 nvm(ubuntu 和 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 维护者)
nvm alias default 6.11.5
如果您希望它与特定版本挂钩。
你也可以nvm alias default 16
.
无论哪种方式,您都需要升级到最新版本的 nvm
(撰写本文时为 v0.33.11)
$ nvm alias default 16.14.2
# nvm set default node.js version 16.14.2
$ 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
这会将默认设置为最新版本的节点
nvm alias default node
然后你需要运行
nvm use default
或退出并打开一个新标签
更改默认节点版本 nvm alias default 10.15.3
*
(用你的默认版本号替换我的版本)
您可以使用 nvm list
你也可以这样:
$ nvm alias default lts/fermium
#100% 为我工作 按照此获取默认节点版本:
nvm install 12.13.1 then, nvm alias default 12.13.1
如果您只想切换一次,请使用此
nvm use 12.x
否则,如果您想切换默认节点版本,请使用
nvm use default 12.x
或
nvm alias default 12.x
目前的答案并没有解决我的问题,因为我在 /usr/bin/node 和 /usr/local/bin/node 中安装了节点 - 所以系统总是先解决这些问题,而忽略了 nvm 版本。
我通过将现有版本移动到 /usr/bin/node-system 和 /usr/local/bin/node-system
解决了这个问题然后我再也没有节点命令了,直到我使用 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
警告:此答案仅适用于MacOS
假设您的 nvm 中有 2 个版本的 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 alias default 13.10.1
这将使默认指向 v13.10.1 作为...
default -> 13.10.1 (-> v13.10.1)
- 打开终端的新实例。现在在这里检查节点版本...
node -v
你会得到...
v13.10.1
nvm list 也会显示新的默认版本。
nvm list
只是一个信息: 以上示例中的 NodeJS 版本将具有不同的 npm 版本。您可以在终端中通过 运行 npm -v
我尝试了投票最多的答案,但对我不起作用。
问题是我通过 brew 安装了另一个节点,NVM 将其识别为系统节点。 NVM 将系统节点优先于默认别名。我所要做的就是卸载系统节点 (brew uninstall node
)。
更改默认版本以使用最新的 LTS 版本
nvm alias default lts/*
您可以通过执行 nvm install lts/* --reinstall-packages-from=lts/*
或每周一次的 cron 作业来手动升级全局版本,如果您想使您的版本保持最新
--reinstall-packages-from=lts/*
用于重新安装您每次更改版本时拥有的全局包
nvm alias default 16
(其中“16”是您要使用的版本)但是如果您从 https://nodejs.org/en/download/ before I would suggest you remove it first. For m1 or m1 pro chips, I suggest you follow this solution: https://www.youtube.com/watch?v=fULL8QiPEU4
对于那些在 VSCode 终端 中进行测试并且即使在 killing/restarting 终端之后仍然看到旧版本的人——VS 代码以某种方式缓存了旧版本。 Close/reopen 你的完整 VSCode window 并且你应该看到 node -v
的正确版本。
我在 运行 之后做了类似的事情 nvm install --lts
:
nvm alias default 'lts/*'
确保在全局安装了正确版本的节点。您的公司可能正在使用不同的版本。
首先检查可用版本
nvm list
然后使用
设置默认版本nvm alias default lts/**
使用 NVM 的简要步骤
对于Mac
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.39.1/install.sh | bash
nvm install 16
nvm use 16
nvm alias default 16
npm install npm --global # Upgrade npm to the latest version
对于Linux
sudo apt install curl git
curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install nodejs
对于Windows
Git's installer for Windows from below link
https://git-scm.com/download/win
node-v16.XX.XX-x64.msi from below link
https://nodejs.org/dist/latest-v16.x/