一、背景介绍 日常工作中,我们有时候会遇到需要同时开发多个项目,如果不同项目所依赖的node版本不一致,就会比较麻烦。比如项目一,是比较旧的项目,所依赖的版本最高为14;项目二,是刚启动的新项目,所依赖的版本为16以上;这种情况下,我们通过反复的安装、卸载node来进行版本切换是不太现实的,所以nvm就是为了帮助我们进行node版本切换的存在。
二、安装下载 1、从官网下载以下安装包:github.com/coreybutler…
2、将下载下来的压缩包进行解压(电脑上的任意位置 我解压到D盘了)
3、接下来进行傻瓜式安装一路Next到底,安装过程中需要配置node存放目录,按照自己需求进行选择(就是最终node的安装目录,可以和之前node的保持一致)
4、安装完毕后输入命令 nvm -v 查看版本,安装成功则显示版本号和列出了各种使用命令。
三、常用命令 nvm list available 列出所有可以安装的Node版本号
- nvm install node版本号 下载指定版本号(例如:nvm install 16.16.0)
- nvm ls 显示所有已安装的版本
- nvm use 版本号 使用指定版本号(例如:nvm use 16.16.0)
四、命令解释
- nvm off // 禁用node.js版本管理(不卸载任何东西)
- nvm on // 启用node.js版本管理
- nvm install // 安装node.js的命名 version是版本号 例如:nvm install 8.12.0
- nvm uninstall // 卸载node.js是的命令,卸载指定版本的nodejs,当安装失败时卸载使用
- nvm ls // 显示所有安装的node.js版本
- nvm list available // 显示可以安装的所有node.js的版本
- nvm use // 切换到使用指定的nodejs版本
- nvm -v // 显示nvm版本
- nvm install stable // 安装最新稳定版
- nvm current // 显示当前使用中的nvm版本
五、nvm use报错exit status 5解决方法 nvm use 版本报错,出现exit status 5: Access is denied.是因为无权限。 打开c盘C:\Windows\System32找到 cmd.exe,以管理员身份打开后,再次使用 nvm use x.x.x可实现成功切换。
六、使用nvm进行node多版本的管理。在安装完node后,可能会有如下问题 npm -v 'npm' 不是内部或外部命令,也不是可运行的程序或批处理文件。
版本问题,在8.11以上版本的node版本对应的npm都没法自动安装。 正常情况下,在nvm文件夹对应的node版本文件夹中,里面应该还有npm和npm.cmd文件。如下。
查看会发现自己的并没有,而是下载到了与node文件夹同级的temp文件夹下。
找到及时解压即可
另外,还可以在网站上自行下载对应版本的npm即可。 对应npm版本可以在cmd中使用nvm进行安装node中的信息中看到。 (npm历史版本下载地址)
下载后解压得到文件夹。复制到node安装版本的文件夹的node_modules中,并将文件名修改为npm。 最后将npm文件夹里bin目录下的npm和npm.cmd复制到当前文件根目录解决。
node 与 npm 对应版本:nodejs.org/zh-cn/downl…