MAC Node版本切换&Gulp适配
MAC环境变量设置
注意:以下的多版本node管理已经不适用了,请参考 Mac NVM管理多版本node
gulp对node版本的要求
gulp 3 支持node10 和 node11
# 由于电脑上安装了更高版本的node 导致gulp无法正常执行
gulp 3 对python需求
# npm 安装 gulp和相关的依赖 需要用到 python2
# brew 已经不支持python2安装了
# 需要手动下载python2 安装包 手动安装
# 安装包:
# • https://www.python.org/downloads/release/python-2718/
# • oss://s-copys2/tech-tools/
#安装完成后:
zhoujh@zhoujh-MBP21 ~ % which python
/usr/local/bin/python
zhoujh@zhoujh-MBP21 ~ % which python2
/usr/local/bin/python2
zhoujh@zhoujh-MBP21 ~ % which python3
/opt/homebrew/bin/python3
快速切换
环境变量文件检查(不用每次都执行)
# 在~/.zshrc中增加 source ~/.zshrc_node, 通过更新.zshrc_node来更新node环境变量
source ~/.zshrc_node
当前node版本检查
# 如果已经是需要的版本 就不用切换了
node -v && npm -v
切换node@10
# node 10 brew 已经不支持了,无法通过brew 安装node10
# 需要通过官网下载pkg安装包来安装 安装的是 x86版本
# 安装包存储地址:oss://s-copys2/tech-tools/
# 安装信息:
# • Node.js v10.24.1 to /usr/local/bin/node
# • npm v6.14.12 to /usr/local/bin/npm
# 1 移除当前node版本: brew unlink node@16
brew unlink node@16
sleep 1;
# 2 修改环境变量: export NODE_PATH
echo 'export NODE_PATH="/usr/local/bin"
export PATH="$NODE_PATH:$PATH"' > ~/.zshrc_node
############### 废弃 ###############
# 1 移除当前版本node 然后link需要的node版本
brew unlink node@16 && brew link --overwrite --force node@10
# 2 修改环境变量
echo 'export NODE_PATH="/usr/local/opt/node@10/bin"
export PATH="$NODE_PATH:$PATH"' > ~/.zshrc_node
# 3 检查版本和环境变量 (需要关闭当前的窗口 新开命令行窗口)
node -v && npm -v && echo $PATH
############### 废弃 ###############
切换node@16
# 1 移除当前版本node 然后link需要的node版本
brew unlink node@10 && brew link --overwrite --force node@16
# 2 修改环境变量
echo 'export NODE_PATH="/usr/local/opt/node@16/bin"
export PATH="$NODE_PATH:$PATH"' > ~/.zshrc_node
# 3 检查版本和环境变量 (需要关闭当前的窗口 新开命令行窗口)
node -v && npm -v && echo $PATH
切换node
# 1 移除当前版本node 然后link需要的node版本
brew unlink node@10 && brew link --overwrite --force node
# 2 修改环境变量
echo 'export NODE_PATH="/usr/local/opt/node/bin"
export PATH="$NODE_PATH:$PATH"' > ~/.zshrc_node
# 3 由于最新版本npm路径不在node路径下 切换后会导致npm无效,需要手动reinstall node
# (/usr/local/lib/node_modules/npm/bin/npm-cli.js)
brew reinstall node
# 3 检查版本和环境变量 (需要关闭当前的窗口 新开命令行窗口)
node -v && npm -v && echo $PATH
切换node版本
mac 通过brew查看node版本
# search命令查看
brew search node
# 结果
==> Formulae
libbitcoin-node node ✔ node-sass node@12 node@16 nodebrew nodenv
llnode node-build node@10 ✔ node@14 ✔ node_exporter nodeenv ode
==> Casks
nodebox nodeclipse
检查当前node和npm版本
zhoujh@zhoujh-MBP opt % node -v
v17.2.0
zhoujh@zhoujh-MBP opt % npm -v
8.1.4
切换node版本
# unlink当前的node版本
brew unlink node
# link 需要的node版本
brew link --overwrite --force node@10
# 修改环境变量
## 切换为node@10版本
unset NODE_PATH
echo 'export NODE_PATH="/usr/local/opt/node@10/bin"' >> ~/.zshrc
## 切换为最新node版本
echo 'export NODE_PATH="/usr/local/opt/node/bin"'>> ~/.zshrc
# 这条语句只需要执行一次
echo 'export PATH="$NODE_PATH:$PATH"' >> ~/.zshrc