nvm、nrm、npm 安装和使用详解(小结)


Posted in Javascript onJanuary 17, 2019

一、nvm的安装和使用

nvm全称Node Version Manager是 Nodejs 版本管理器,它让我们能方便的对 Nodejs 的版 本进行切换。 nvm 的官方版本只支持 Linux 和 Mac。 Windows 用户,可以用 nvm-windows。详情请点击官方说明

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

如果之前是在官网下载的 node 安装包,运行后会自动安装在全局目录,其中node 命令在 /usr/local/bin/node ,npm 命令在全局 node_modules 目录中,具体路径为 /usr/local/lib/node_modules/npm

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

#查看已经安装在全局的模块,以便删除这些全局模块后再按照不同的 node 版本重新进行全局安装
npm ls -g --depth=0 
#删除全局 node_modules 目录
sudo rm -rf /usr/local/lib/node_modules 
#删除 node
sudo rm /usr/local/bin/node 
#删除全局 node 模块注册的软链
cd /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk '{print $9}'| xargs rm

2、 安装

首先确保你的网络畅通,还有不被墙,如果需要翻墙,请看:

lantern

下载 nvm 包 地址:nvm-windows下载,我们选择第一个:nvm-noinstall.zip 下载完成后解压到一个地方,比如: C:\dev\nvm 里面的文件列表是这样的:elevate.cmd、elevate.vbs、install.cmd、LICENSE、nvm.exe

备注:windows下要设置显示文件类型的扩展名,这样才能看到上述文件的后缀

双击 install.cmd 然后会让你输入”压缩文件解压或拷贝到的一个绝对路径” 先不用管它,直接回车,成功后,会在C盘的根目录生成一个settings.txt的文本文件,把这个文件剪切到C:\dev\nvm目录中,然后我们把它的内容修改成这样:

root: C:\dev\nvm 
 path: C:\dev\nodejs 
 arch: 64 
 proxy: none 
 node_mirror: http://npm.taobao.org/mirrors/node/ 
 npm_mirror: https://npm.taobao.org/mirrors/npm/

然后我们开始配置环境变量了,因为刚刚点击了install.cmd的文件,那么会在环境变量的系统变量中,生成两个环境变量:NVM_HOME 和 NVM_SYMLINK 我们开始修改这两个变量名的变量值:NVM_HOME的变量值为:C:\dev\nvm; NVM_SYMLINK的变量值为:C:\dev\nodejs

我们还会发现,在Path中也会自动添加上C:\dev\nvm;或者是C:\dev\nodejs,如果有的话,把他们删掉,没有的话更好,我们自己来配置,在Path的最前面输入: ;%NVM_HOME%;%NVM_SYMLINK%;

打开一个cmd窗口输入命令:nvm v ,那么我们会看到当前nvm的版本信息。然后我们可以安装nodejs了。

继续输入命令:nvm install latest 如果网络畅通,我们会看到正在下载的提示,下载完成后 会让你use那个最新的node版本。

如果你是第一次下载,在use之前,C:\dev目录下是没有nodejs这个文件夹的,在输入比如: nvm use 5.11.0 之后,你会发现,C:\dev目录下多了一个nodejs文件夹,这个文件夹不是单纯的文件夹,它是一个快捷方式,指向了 C:\dev\nvm 里的 v5.11.0 文件夹。

同样的咱们可以下载其他版本的nodejs,这样通过命令:nvm use 版本号 比如:nvm use 5.11.0就可以轻松实现版本切换了。

备注: 如果你的电脑系统是32 位的,那么在下载nodejs版本的时候,一定要指明 32 如: nvm install 5.11.0 32 这样在32位的电脑系统中,才可以使用,默认是64位的。

3、nvm常用命令

nvm install ## 安装指定版本,可模糊安装,如:安装v6.2.0,既可nvm install v6.2.0,又可nvm install 6.2
nvm uninstall ## 删除已安装的指定版本,语法与install类似
nvm use ## 切换使用指定的版本node
nvm ls ## 列出所有安装的版本
nvm ls-remote ## 列出所以远程服务器的版本(官方node version list)
nvm current ## 显示当前的版本
nvm alias ## 给不同的版本号添加别名
nvm unalias ## 删除已定义的别名
nvm reinstall-packages ## 在当前版本node环境下,重新全局安装指定版本号的npm包

二、npm的安装和使用

首先我们进入命令模式,输入 npm config set prefix “C:\dev\nvm\npm” 回车,这是在配置npm的全局安装路径,然后在用户文件夹下会生成一个.npmrc的文件,用记事本打开后可以看到如下内容:

prefix=C:\dev\nvm\npm

然后继续在命令中输入: npm install npm -g 回车后会发现正在下载npm包,在C:\dev\nvm\npm目录中可以看到下载中的文件,以后我们只要用npm安装包的时候加上 -g 就可以把包安装在我们刚刚配置的全局路径下了。

我们为这个npm配置环境变量: 变量名为:NPM_HOME,变量值为 :C:\dev\nvm\npm

在Path的最前面添加;%NPM_HOME%,注意了,这个一定要添加在 %NVM_SYMLINK%之前,所以我们直接把它放到Path的最前面

最后我们新打开一个命令窗口,输入npm -v ,此时我们使用的就是我们统一下载的npm包了。

同样的我们还可以安装cnpm工具,它是中国版的npm镜像库,地址在这里:https://cnpmjs.org/,也是npm官方的一个拷贝,因为我们和外界有一堵墙隔着,所以用这个国内的比较快,淘宝也弄了一个和npm一样的镜像库,http://npm.taobao.org/,它和官方的npm每隔10分钟同步一次。安装方式:

npm install -g cnpm ?registry=http://r.cnpmjs.org

或者用淘宝的npm install -g cnpm ?registry=https://registry.npm.taobao.org

安装好了cnpm后,直接执行cnpm install 包名比如:cnpm install bower -g 就可以了。-g只是为了把包安装在全局路径下。如果不全局安装,也可以在当前目录中安装,不用-g就可以了。

三、nrm 的安装和使用

nrm(npm registry manager )是npm的镜像源管理工具,有时候国外资源太慢,那么我们可以用这个来切换镜像源。

首先全局安装 nrm:

npm install -g nrm

安装完后就可以立即使用了,我们来列出可用的源:

nrm ls

会发现列出了下面几个源:

npm ---- https://registry.npmjs.org/
cnpm --- http://r.cnpmjs.org/
taobao - https://registry.npm.taobao.org/
nj ----- https://registry.nodejitsu.com/
rednpm - http://registry.mirror.cqupt.edu.cn/
npmMirror  https://skimdb.npmjs.com/registry/
edunpm - http://registry.enpmjs.org/

当然这里我们选择国内淘宝的源:

nrm use taobao

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
java script编程起步(第三课)
Jan 10 Javascript
JavaScript弹簧振子超简洁版 完全符合能量守恒,胡克定理
Oct 25 Javascript
javascript OFFICE控件测试代码
Dec 08 Javascript
你必须知道的JavaScript 变量命名规则详解
May 07 Javascript
再分享70+免费的jquery 图片滑块效果插件和教程
Dec 15 Javascript
JS获取各种宽度、高度的简单介绍
Dec 19 Javascript
JavaScript实现弹出广告功能
Mar 30 Javascript
JS实现简易的图片拖拽排序实例代码
Jun 09 Javascript
js学习总结_基于数据类型检测的四种方式(必看)
Jul 04 Javascript
解决vue页面刷新或者后退参数丢失的问题
Mar 13 Javascript
微信小程序实现收货地址左滑删除
Nov 18 Javascript
微信小程序动画组件使用解析,类似vue,且更强大
Aug 01 Javascript
JavaScript之实现一个简单的Vue示例
Jan 17 #Javascript
如何能分清npm cnpm npx nvm
Jan 17 #Javascript
JavaScript设计模式之装饰者模式实例详解
Jan 17 #Javascript
npm 常用命令详解(小结)
Jan 17 #Javascript
JavaScript设计模式之享元模式实例详解
Jan 17 #Javascript
vuex页面刷新后数据丢失的方法
Jan 17 #Javascript
jquery获取img的src值实例介绍
Jan 16 #jQuery
You might like
基于mysql的论坛(7)
2006/10/09 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
js实现GridView单选效果自动设置交替行、选中行、鼠标移动行背景色
2010/05/27 Javascript
一个收集图片的bookmarlet(js 刷新页面中的图片)
2010/05/27 Javascript
让页面上两个div中的滚动条(滑块)同步运动示例
2013/08/07 Javascript
js在IE与firefox的差异集锦
2014/11/11 Javascript
JavaScript原生对象之String对象的属性和方法详解
2015/03/13 Javascript
JQuery包裹DOM节点的方法
2015/06/11 Javascript
JS实现新浪微博效果带遮罩层的弹出框代码
2015/10/12 Javascript
jQuery+ajax实现文章点赞功能的方法
2015/12/31 Javascript
深入理解jquery中的事件与动画
2016/05/24 Javascript
jQuery中show与hide方法用法示例
2016/09/16 Javascript
jQuery网页定位导航特效实现方法
2016/12/19 Javascript
详解angular2实现ng2-router 路由和嵌套路由
2017/03/24 Javascript
浅谈js的解析顺序 作用域 严格模式
2017/10/23 Javascript
JS实现不用中间变量temp 实现两个变量值得交换方法
2018/02/04 Javascript
JS原生瀑布流效果实现
2019/04/26 Javascript
Vue ElementUI实现:限制输入框只能输入正整数的问题
2020/07/31 Javascript
python使用7z解压apk包的方法
2015/04/18 Python
使用Python从有道词典网页获取单词翻译
2016/07/03 Python
Python时间的精准正则匹配方法分析
2017/08/17 Python
Python魔法方法详解
2019/02/13 Python
python定时检测无响应进程并重启的实例代码
2019/04/22 Python
python3多线程知识点总结
2019/09/26 Python
你应该知道的Python3.6、3.7、3.8新特性小结
2020/05/12 Python
Python3批量创建Crowd用户并分配组
2020/05/20 Python
Python如何执行系统命令
2020/09/23 Python
美国开幕式潮店:Opening Ceremony
2018/02/10 全球购物
安德玛加拿大官网:Under Armour加拿大
2019/10/02 全球购物
全球精选男装和家居用品:Article
2020/04/13 全球购物
汽车销售助理岗位职责
2015/04/14 职场文书
幼儿园安全教育随笔
2015/08/14 职场文书
2016干部作风整顿心得体会
2016/01/22 职场文书
卖车协议书范文
2016/03/23 职场文书
深度学习tensorflow基础mnist
2021/04/14 Python
详解RedisTemplate下Redis分布式锁引发的系列问题
2021/04/27 Redis