原因(cause)
好久没动笔,我想启动我的hexo,并写上一些分享,我通过下载gitlab上的私有仓库,然后转入github中,下载下来并安装好node.js之后,我执行
npm install -g hexo-cli
希望可以启动我的hexo,但此时却抛出个异常
The operation was rejected by your operating system
本文介绍
本文主要解决mac中node的各个版本会有差异,新旧系统兼容,第三方组件与node版本导致的全局版本混乱等等,所以通过nvm管理起来,网上查询了下资料,有人说可以不卸载直接安装,为了保险起见,我先卸载了,对于不卸载的朋友,请斟酌后再试。
nvm介绍
nvm是node版本管理工具,主要特点:
1.可安装多版本的node。
2.灵活切换当前的node版本。
3.以沙箱方式全局安装第三方组件到对应版本的node中。
4.通过.vnmrc文件,方便灵活地指定各应用系统所需的node版本进行运行。
直接支持linux,OS系统。windows系统需要使用nvm-windows:
https://github.com/coreybutler/nvm-windows/releases
通过nvm管理node,如果之前通过安装包安装推荐删除,如果不删除也不影响安装,只有在别人使用你的电脑的另外账户时会有问题。具体的注意事项可以参考:
https://github.com/creationix/nvm
安装
卸载之前的node.js
如果通过node下载的安装包进行安装,在终端输入以下命令:
sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}
如果是从brew安装的, 运行brew uninstall node
如果不是则可以直接删除文件夹
sudo rm /usr/local/bin/npm
sudo rm/usr/local/share/man/man1/node.1
sudo rm /usr/local/lib/dtrace/node.d
sudo rm -rf ~/.npm
sudo rm -rf ~/.node-gyp
sudo rm /opt/local/bin/node
sudo rm /opt/local/include/node
sudo rm -rf /opt/local/lib/node_modules
安装nvm
安装nvm可以通过两个命令
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
或者
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash
查看安装
安装完毕后输入nvm,当有一段输出并没有明显的报错时,代表安装成功。
博主通过命令安装后,自动在 .bash_profile 文件内添加了
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . " $NVM_DIR/nvm.sh"
如果你没有添加,可以手动添加
然后 source 一下 .bash_profile
source .bash_profile
安装版本
nvm install stable # 安装最新稳定版 node
nvm install 10.15.1 # 安装 10.15.1 版本
查看nvm版本:打开新的终端,用nvm current查看当前版本显示
删除指定版本 node:nvm uninstall v10.15.1
使用指定版本 node:nvm use v10.15.1
切换到最新版:
nvm use node
我们给 10.15.1 这个版本号起了一个名字叫做 my-version
nvm alias my-version 10.15.1
然后我们可以运行:
nvm use my-version
下面这个命令可以取消别名:
nvm unalias my-version
另外,你还可以设置 default 这个特殊别名:
nvm alias default node
列出已安装实例
nvm ls
碰到的问题以及解决方法
参考文章
https://github.com/creationix/nvm
https://blog.csdn.net/hahahhahahahha123456/article/details/85220526
https://www.jianshu.com/p/04d31f6c22bd
https://www.jianshu.com/p/04d31f6c22bd