MacOS 使用nvm
步骤1: 如果已经安装brew,使用brew安装nvm
brew install nvm
这个时候可能会因为下载时候连接不上一些网络而卡住,多试几次或者翻墙用外网
步骤2: 安装完成之后,输nvm -v
查看版本,检查是否安装成功,这个时候可能会提示command not found
步骤3: 配置环境变量
export NVM_DIR="$HOME/.nvm"
source $(brew --prefix nvm)/nvm.sh
步骤4: 检查是否安装成功:nvm -v
查看版本,结果显示版本号 ,完成
后续问题和解决
- 安装完nvm之后,又安装了一个新的node版本,并且查看已有的node版本lists
- 这里打开vscode,使用npm,发现还是之前的高版本的npm,但是在这之前已经在nvm里面切换了node到低版本了,npm也相应使用了低版本的,这里就发现,nvm切换node版本和vscode里面的node版本不一致。
- 问题分析:因为之前安装nvm时候,是直接使用了brew来安装的,并没有卸载掉之前系统已经带有的node版本,所以vscode里面的node版本会切换不回来。
- 解决:先卸载掉之前的node
按照下面这两步卸载才有用:
(1)卸载从官网下载的pkg文件的nodejs:
sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}
(2) 卸载从homebrew 安装的node:
brew uninstall node
(3)检查此时nvm,发现只剩下刚刚手动安装的v14了
5. 问题:卸载完之后,发现新开终端窗口或者vscode都识别不了nvm、node、npm了
6. 解决:应该是之前安装nvm其实没有安装好,因为涉及到两个文件~/.bash_profile
和~/.zshrc
,这两个文件我在nvm安装目录下实际上是没看到的,但是我在上面的步骤中忽略了,这里要老老实实手动加上。在设置nvm变量的时候,应该是有了~/.zshrc
文件。
- 到这里,在新开的终端里面再使用node,nvm,npm都能正常生效了,vscode里面也能正常使用了,大功告成