欢迎来到代码驿站!

NodeJS

当前位置:首页 > 脚本语言 > NodeJS

mac中利用NVM管理不同node版本的方法详解

时间:2020-11-05 18:12:05|栏目:NodeJS|点击:

前言

大家在开始本文的正文之前,建议大家先看看这篇文章:https://www.jb51.net/article/73424.htm,这篇文章给大家详细介绍了关于node.js 下使用 nvm 或者 n 来进行版本控制及nvm 安装node.js 版本后,重启终端 node , npm 环境变量失效的相关内容,好了,下面开始本文的正文:

Mac 下通过 brew install nvm 所安装的 nvm ,由于安装路径不同,无法正确启用。建议使用 brew uninstall nvm 卸载掉之后,通过本文的方案重新安装一次。

卸载已安装到全局的 node/npm

如果之前是在官网下载的 node 安装包,运行后会自动安装在全局目录,其中

node 命令在 /usr/local/bin/node ,npm 命令在全局 node_modules 目录中,具体路径为 /usr/local/lib/node_modules/npm

安装 nvm 之后最好先删除下已安装的 node 和全局 node 模块:

npm ls -g --depth=0 #查看已经安装在全局的模块,以便删除这些全局模块后再按照不同的 node 版本重新进行全局安装

sudo rm -rf /usr/local/lib/node_modules #删除全局 node_modules 目录
sudo rm /usr/local/bin/node #删除 node
cd /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk '{print $9}'| xargs rm #删除全局 node 模块注册的软链

通过nvm来管理

场景:同组的同事使用node版本是5.7.0,而本机安装了node 7.2.0,如何兼容?

使用nvm管理。

  • 使用Homebrew安?bnvm
  • 使用nvm安?bNode.js
  • 使用nvm?o痛切?QNode.js版本

安装nvm

brew install nvm

使nvm生效

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

或者:

echo "source $(brew --prefix nvm)/nvm.sh" >> .bash_profile
. ~/.bash_profile

使用nvm安?bNode.js

nvm ls-remote

查看可用版本:

v0.10.20
v0.10.21

安装:

nvm install <version>

比如:

nvm install v5.7.0

还有

nvm install v7.2.0

使用nvm?o痛切?QNode.js版本

nvm??把各??版本的node安?b在/usr/local/opt/nvm底下。可以看看?目?底下放了哪些?|西:

 $ ls /usr/local/opt/nvm
INSTALL_RECEIPT.json LICENSE.md alias bin nvm.sh v5.7.0 v7.2.0

我??可以?l?F透?^nvm安?b?@???版本,事??上??在nvm目?下另外建立了v5.7.0以及v7.2.0???目??矸?e存放node的binary?n。又nvm??在你的$PATH最前面安插指定版本的目?,透?^?@??方式你在使用node指令?r就??用指定的版本?磉\作了。

???H?_?JPATH的值看看:

 $ echo $PATH
/usr/local/opt/nvm/v5.7.0/bin: ...

查看当前可用版本

nvm ls

切换版本:

nvm use <version>

比如

nvm use --delete-prefix v5.7.0

也可以偷?幸稽c,不用打完整的版?:

$ nvm use --delete-prefix 5.7
Now using node v5.7.0

切?Q成?e的版本:

$ nvm use --delete-prefix 7
Now using node v7.2.0

不?^???}?砹耍?如果你另外?_一??shell?窗,?K?入nvm,???l?Fcurrent version是空的:

 $ nvm ls

 v0.10.24
 v0.11.10
current:

?@是因?槔?用nvm use指令只??在??前的shell生效,??你?_了新的shell就???l?F$PATH的值已?不包含??才?O定的node目?了。

要解?Q?@?????}就是利用

$ nvm alias default <version>

?碓O定一???A?O的node版本:

 $ nvm alias default 5.7.0
default -> 5.7 (-> v5.7.0)

此?r再打?_另一??shell?窗,就可以直接使用你所?O定的node版本了。

总结

上一篇:从零开始学习Node.js系列教程之基于connect和express框架的多页面实现数学运算示例

栏    目:NodeJS

下一篇:基于socket.io+express实现多房间聊天

本文标题:mac中利用NVM管理不同node版本的方法详解

本文地址:http://www.codeinn.net/misctech/19463.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有