像Node、Python这种版本帝,并且各个版本可能存在不兼容的情况,如果不弄个版本管理工具,恐怕还没体会其带来的便利的时候就已对其产生深深的厌恶,我在Mac上就用了Python的版本管理工具-pyenv
brew install pyenv
, Node也有类似的工具---nvm
安装
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh | bash
#这个脚本会将nvm repository克隆到~/.nvm目录下,并且在profile文件(~/.bash_profile, ~/.zshrc, ~/.profile或 ~/.bashrc)中加入以下脚本
export NVM_DIR="$HOME/.nvm
"[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
*具体可以参考nvm(github) *
Mac安装
brew install nvm
#安装完成后会出现如下:
Please note that upstream has asked us to make explicit managing
nvm via Homebrew is unsupported by them and you should check any
problems against the standard nvm install method prior to reporting.
大概就是提示Homebrew以及要求我们做了对nvm的支持,但是不清楚有木有问题,记得报告我们哟!
使用
nvm install v0.10.32 #安装特定版本的node
nvm use 0.10 #使用最新版本的0.10.x
nvm run 0.10.32 app.js #使用v0.10.32运行app.js
nvm alias default 0.10.32 #设置默认版本为0.10.32
问题
问题一
nvm 重启终端失效,每次重新登上服务器,输入node命令或者其他和node相关的命令,如forever,都提示-bash: node: 未找到命令
- 查看当前使用的node的版本
nvm current #结果:返回none #查看当前安装的版本 nvm ls #如果default -> 指向一个不存在的版本就会导致这样的问题(比如说第一次安装某个版本后,又安装了另一个版本,然后卸载了第一个版本,可能就会导致这样的问题)
- 解决办法
nvm alias default v6.9.0 #某人版本设置为6.9.0版本
问题二
nvm被墙,安装速度奇慢还好有淘宝,它不只是给女人们买衣服的地方,还提供了很多实用的工具,如各种镜像 https://npm.taobao.org/
- 使用方法
#在终端执行如下命令,其实是设置临时变量(在shell中执行程序时,shell会提供一组环境变量。 export可新增,修改或删除环境变量,供后续执行的程序使用。export的效力仅及于该此登陆操作。)
export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node
#如果想要永久生效,可修改profile文件(~/.bash_profile, ~/.zshrc, ~/.profile或 ~/.bashrc),将以上命令加入到profile文件中,记得修改后source下使其生效哦!
卸载
老版本的nodejs卸载,通过官网的pkg安装的,卸载请参看