最近刚更换 Mac 本进行项目的开发,刚上手 Mac 本还不是很熟练,需要安装 Node.js 的包管理工具
在 Windows 上我是实用的 nvm 来管理的 Node 版本,但是我尝试下载 Nvm ,发现下载安装后的 Nvm 无法使用,提示 “This is not the package you are looking for: please go to http://nvm.sh”。同事告诉我在Mac 需要实用 n 这个工具
于是就去网上查了一下,发现千遍一律的都是让你使用 Homebrew 来安装,但是我的 Mac 本安装了? Homebrew 后依旧无法下载这个管理工具,大致错误提示是 “Failed to connect to raw.githubusercontent.com port 443: Connection refused”? ?
后来经过一番操作,发现其实安装 n 完全不需要使用 Homebrew 呀。完全可以使用 npm 去安装,合并要弄的这么麻烦
一、首先先去 node 官网随便下载一个 node 安装在自己电脑上,这一步的目的是让你的电脑上有 npm 可用
二、然后再 通过 npm 去安装 n 这个工具,命令如下:
npm install -g n // 安装
n --version // 查看版本
老规矩,安装之后能查看到版本表示安装成功,如下图:
此致,n 安装成功
使用命令跟 nvm 差不多的,这里就罗列几个我常用的命令,其他的命令大家前官网看
// 安装node. sudo:类似于winsows的管理员身份。安装版本号前需要给一个v
sudo n install v16.20.0
// 使用某个版本。不需要加 v
sudo n use xxx
sudo n use 16.20.0
// 卸载某个版本
sudo uninstall xxx
sudo uninstall 16.20.0
一、版本切换不成功:
我常用的 node 版本是 16.20.0? ?14.20.1? 于是我就使用 install 安装了这两个版本的 node,我先安装的?16.20.0 版本,然后使用 use 切换到这个版本,再 node -v 查看当前的 node 版本,确实是?16.20.0,到这里一切正常
于是我又实用 install 安装了?14.20.1,这时候我并没有再使用 use 去切换 node 版本,发现我的 node 版本既然神奇的自己切换到?14.20.1?这个版本了,于是我再次使用 use 去切换回 16.20.0 的版本,提示我却换成功,但是实际node却依旧是?14.20.1,也就是没有却换成功。
使用 use 切换 node 版本成功,提示 "Welcome to Node.js v16.20.0."
但是 node -v 依旧是?14.20.1
什么意思?难到会自己切换到最后安装的版本上??于是我卸载了上面两个 node 版本,随便去下载了俩个 14.20.5。? 14.20.7。 发现确实会自己切换到最后下载的版本上
二、切换不成功的处理办法
至于为什么切换不成功,刚接触 Mac本还没有去深入了解,先解决遇到的问题再说
既然命令切换不成功其实还有一种切换方法
在终端中输入 n 会看到你当前下载的 node 版本列表,并且下面有一段提示:
Use up/down arrow keys to select a version, return key to install, d to delete, q to quit
使用上下方向键选择版本,回车键安装,d键删除,q键退出
也就是说我们可以直接通过上下键选择版本,回车键切换?node 版本,这样比使用命令还方便
上下键选择版本,回车确认后会看到如下的输出:
最后版本切换成功:
所以别再都使用 Homebrew 去安装了,直接 npm 去安装也是可行的,还更加方便