人物安装的场景:

学些Electron 发现node版本导致了报错,索性删除了node ,准备重新安装,

之前安装nvm版本管理失效了,好像很久的事情了,然后挣扎了一下,开始安装之路,然后坑就来了。

 

安装前,需确保没有node环境,有的先卸载和删除一下

1.brew安装命令:

brew install nvm

2.安装完成后需要在 .bash_profile 文件添加下面该行,配置环境变量:

source $(brew --prefix nvm)/nvm.sh

3.完成后,重新加载环境变量,执行下面的命令:

source ~/.bash_profile

nvm安装node步骤,以10.15.3为例:

nvm install node版本

nvm use node版本

4.安装完成,如遇到下面的情况:

nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local/Cellar/nvm/0.35.3/versions/node/v10.15.3"

Run `nvm use --delete-prefix v10.15.3` to unset it.

5.解决方案,执行下面的命令:

npm config delete prefix

npm config set prefix $NVM_DIR/versions/node/v10.15.3

查看node,npm版本号: node -v, npm -v

ps:借鉴了别人的一系列骚操作,然后发现一步一个坑。

brew安装很多问题包括重启电脑,配置会失效,懒得弄了,采用第二套方案,手动安装~~~~

 

2.nvm手动安装

安装命令

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash

或者wget 安装

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash

运行以上任一命令将下载一个脚本并运行它。脚本作用克隆NVM存储库到~/.nvm 目录下,并尝试将下面的命令添加到配置文件( ~/.bash_profile, ~/.zshrc,~/.profile,或 ~/.bashrc)。ps:我电脑是没有直接安装成功的。

export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

 

验证nvm是否安装成功

输入 nvm 正确输出版本信息,则安装成功,如果输出 nvm: command not found 则没有安装成功,接着参考下面故障排除,只说了macOS系统,windows系统问题(我没电脑😊)此处有点凡尔赛,请忽视我这颗年轻躁动的心。

macOS进行故障排除

原文档说的很长,我自己理解安装归结为,自动安装如果失败了,就排查看对应的手动安装命令,哪一步没有自动执行成功。手动安装为下面这两步骤。

手动安装命令: 1.将nvm存储库克隆到$HOME/.nvm,然后加载nvm

export NVM_DIR="$HOME/.nvm" && ( git clone https://github.com/nvm-sh/nvm.git "$NVM_DIR" cd "$NVM_DIR" git checkout `git describe --abbrev=0 --tags --match "v[0-9]*" $(git rev-list --tags --max-count=1)` ) && \. "$NVM_DIR/nvm.sh"

2.将以下几行添加到您的 ~/.bashrc,~/.profile或~/.zshrc文件中,以使其在登录时自动生成:

export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

解决问题:

我查看自己本地是有 ~/.nvm 目录的说明第一步是执行成功了,然后手动按照第二步要求,把命令添加到每个文件中,然后再执行command -v nvm 或者 nvm -v 输出nvm 版本信息,说明安装成功了。 ps: 可能有的人没有~/.zshrc 文件,我是没有用默认终端,自己装了iTerm2 + zsh,如果没有这个文件,别的文件添加后,试一下,能正常输出就行。

其他情况:

如果max下nvm安装node报以下错误的解决办法

nvm is not compatible with the npm config "prefix" option: currently set to "/Users/z/.npm-global" Run `npm config delete prefix` or `nvm use --delete-prefix v4.2.4` to unset it.

解决办法:如果是通过brew安装的nvm管理的node,则

在 ~/.bashrc, ~/.bash_profile, ~/.profile, 或者 ~/.zshrc 文件添加以下命令:

export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/nodeexport NVM_DIR="$HOME/.nvm" source $(brew --prefix nvm)/nvm.sh

如果是不是通过brew而是直接安装的nvm管理的node,则

在 ~/.bashrc, ~/.bash_profile, ~/.profile, 或者 ~/.zshrc 文件添加以下命令:

export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/nodeexport NVM_DIR="$HOME/.nvm"source ~/.nvm/nvm.sh

 

归纳一下nvm 常用命令

  • nvm install stable ## 安装最新稳定版 node,当前是node v9.5.0 (npm v5.6.0)
  • nvm install ## 安装指定版本,可模糊安装,如:安装v4.4.0,既可nvm install v4.4.0,又可nvm install 4.4
  • nvm uninstall ## 删除已安装的指定版本,语法与install类似
  • nvm use ## 切换使用指定的版本node
  • nvm ls ## 列出所有安装的版本
  • nvm ls-remote ## 列出所有远程服务器的版本(官方node version list)
  • nvm current ## 显示当前的版本
  • nvm alias ## 给不同的版本号添加别名
  • nvm unalias ## 删除已定义的别名
  • nvm reinstall-packages ## 在当前版本 node 环境下,重新全局安装指定版本号的 npm 包

 

小插曲:

修改了 ~/.bash_profile文件之后为了初始化的时候运行 在~/.zshrc 下修改了source $(brew --prefix nvm)/nvm添加了source $(brew --prefix nvm)/nvm.sh 然后会不停的重复执行,导致所有的命令行实失效,真是吐了

所以修改这两个文件慎重,

解决方法,touch ~/.zshrc,open ~/.zshrc 记事本打开 注释source $(brew --prefix nvm)/nvm

记录一下😂。