nvm管理多版本node详细完整操作

在项目开发过程中,不同项目使用的nodejs版本不同,有时会因为node版本过高或太低,导致报错;为了解决这种问题,可以通过配置环境变量更换使用的nodejs版本;也可以使用nvm进行管理。

1 NVM介绍

nvm 全称 Node Version Manager,是一个Mac 下的 管理 Node.js 版本的管理工具,nvm 默认只支持 Linux 和 OS X,不支持 Windows;如果需要管理 Windows 下的 node,官方推荐使用 nvmwnvm-windows,不过,nvm-windows 并不是 nvm 的简单移植,他们也没有任何关系。

大部分情况下,Windows 下的 nvmmac 里的 nvm 使用都没有大的差异,基本上是一致的,会有个别命令不太相同。

2 卸载

2.1 卸载node.js

在安装NVM for Windows之前卸载任何现有版本的Node.js(否则你会有冲突的版本)。删除任何可能存在的Node.js安装目录(例如,%ProgramFiles%\nodejs)。NVM生成的符号链接不会覆盖现有的(甚至是空的)安装目录。

检测系统中是否还存在nodejs。在cmd窗口中输入node -v 进行查看。

node -v

自行百度删除方法

2.2 卸载nvm

如果安装了nvm,需要卸载nvm。可以执行卸载文件unins000.exe,需要注意删除环境配置配置。

  1. 用户变量系统变量下的NVM_HOMENVM_SYMLINK两个变量;
  2. 用户变量path中使用了NVM_HOMENVM_SYMLINK变量的值。

3 下载

github下载地址

最新维护版本时1.1.11,下载安装的是1.1.10版本。

  • nvm-noinstall.zip: 绿色免安装版本,但是使用之前需要配置
  • nvm-setup.zip:这是自动配置安装包,下载之后点击安装,无需配置就可以使用,方便。下载nvm-setup.zip
    安装包指示

4 安装

在指定的文件下新建两个文件夹。分别是nodenvm

  • nvm文件夹存放nvm的安装文件
  • node文件夹用来存放node的文件
    文件展示
    将下载好的安装包放入nvm安装包文件夹中,解压,进行安装。选择nvm安装路径,点击下一步。
    nvm安装提示
    选择node.js路径
    nvm安装node提示)
    点击 Install——>点击 Finish,安装完成。

安装完成,node文件夹会消失

安装成果之后

  • 环境变量中的用户变量系统变量都自动添加了NVM_HOMENVM_SYMLINK两个变量;
  • 用户变量中的path变量自动添加了NVM_HOMENVM_SYMLINK变量值。

确认是否安装成功

打开cmd终端工具,执行 nvm。注意:使用powershell会报错

nvm
# 显示当前所使用的nvm版本号
nvm -v

安装成功会打印出nvm版本号和使用帮助。

4 设置镜像

设置镜像有两种方式:

  • 配置文件设置
  • 命令设置

4.1 配置文件设置

如果有安装淘宝镜像的需完成下载镜像的配置,打开nvm文件夹下的settings.txt文件,在settings.txt文件的最后添加以下代码

node_mirror:https://npm.taobao.org/mirrors/node/
npm_mirror:https://npm.taobao.org/mirrors/npm/

其中已经存在两个配置了

root: D:\AppPackage\Nodejs\nvm
path: D:\AppPackage\Nodejs\node
  • rootnvm 安装路径;
  • pathNodeJS 快捷方式路径

4.2 命令设置

 nvm node_mirror [url]        # 设置节点镜像。默认为https://nodejs.org/dist/。保留[url]为空,使用默认url。
 nvm npm_mirror [url]         # 设置npm镜像。默认为https://github.com/npm/cli/archive/。保留[url]为空,默认url。

5 使用

5.1 命令列表

使用命令nvm就可以查询出nvm的命令列表

>nvm

Running version 1.1.10.

usage:
  nvm arch                     # 显示节点是否运行在32位或64位模式。
  nvm current                  # 显示激活版本。
  nvm install <version> [arch] # 版本可以是一个特定的版本,“latest”表示最新的当前版本,“lts”表示最新的lts版本。可选地指定是否安装32位或64位版本(默认为system arch)。设置[arch]为"all"安装32位和64位版本。在此命令的末尾添加——insecure以绕过远程下载服务器的SSL验证。
  nvm list [available]         #  列出node.js的安装。在最后输入“available”,看看可以安装什么。别名为ls。
  nvm on                       # 启用node.js版本管理。
  nvm off                      # 禁用node.js版本管理。
  nvm proxy [url]              # 设置下载要使用的代理。将[url]留空以查看当前代理。将[url]设置为“none”以删除代理。     
  nvm node_mirror [url]        # 设置节点镜像。默认为https://nodejs.org/dist/。保留[url]为空,使用默认url。中国可以使用 https://npmmirror.com/mirrors/node/
  nvm npm_mirror [url]         # 设置npm镜像。默认为https://github.com/npm/cli/archive/。保留[url]为空,默认url。中国可以使用 https://npmmirror.com/mirrors/node/
  nvm uninstall <version>      # 卸载指定版本node 版本必须是指定的版本号。
  nvm use [version] [arch]     # 切换到使用指定的版本。可选使用“latest”,“lts”或“latest”。“latest”是最新安装的版本。可选地指定32/64位架构。 nvm use <arch>将继续使用所选版本,但切换到32/64位模式。                                                                 
  nvm root [path]              # 设置nvm存储不同版本node.js的目录。未设置path时,将显示当前根。
  nvm [--]version              # 显示当前运行的Windows nvm版本。别名为v。

5.2 查看node

# 查看可在线安装的node.js版本
nvm list available
# 查看已安装的node.js版本
nvm ls
#或者
nvm list

5.3 安装node

使用以下命令 安装指定版本的nodejs

默认会存在一个0.0.0版本

nvm install <version>
# eg:
nvm install 16.17.1

安装成功后,在 nvm 安装目录下出现一个<version> 文件夹。安装了多个版本就会有多个对应版本的文件夹。

可以使用node -v命令检查是否安装成功。

# 验证nodejs是否安装成功
node -v

5.4 使用/切换特定版本

# 切换node.js版本
nvm use 16.17.1
Now using node v16.17.1 (64-bit)

5.5 查看当前node版本

# 显示当前正在使用的node.js版本
nvm current

5.6 卸载指定node

# 卸载指定版本的node.js
nvm uninstall [version]

6 关于npm

安装node的时候,npm其实也已经一起安装了。

# 查看npm版本
npm -v

查看npm配置信息

基本包含了仓储和缓存路径的配置

npm config ls

npm
说明

  1. 声明了配置来源于C:\Users\walker\.npmrc文件
  2. 声明了全局仓储地址urlregistry = "https://registry.npm.taobao.org/"
  3. 全局缓存地址:cache = "D:\\AppPackage\\Nodejs\\nvm\\nvm\\node_cache"
  4. 本地仓库地址:C:\Users\walker

6.1 配置全局npm

因为nvm可以管理多个版本的node,如果每次添加一个node版本都要安装一堆的包很麻烦,如果有一个npm可以让各个版本的node共用,就不会这么麻烦了。

修改prefix的值:npm config set prefix 【全局仓库地址】

npm config set prefix "D:\\AppData\\node\\node_global" 

注意:
如果设置了非nvm目录下的路径,需要将仓库目录设置到【环境变量】的path中,否则全局库的命令无法执行

修改cache的值:npm config set cache【全局缓存地址】

npm config set cache "D:\\AppData\\node\\node_cache"

修改仓储url的值:npm install npm -g --registry=https://registry.npm.taobao.org

6.2 使用cnpm

# 使用淘宝镜像cnmp替代npm
npm install -g cnpm --registry=https://registry.npm.taobao.org 
# 验证cnpm是否可用
cnpm config get registry

6.3 测试

# 安装 yarn
npm install -g yarn
npm install -g yarn@[版本号]

安装完可以发现在D:\AppData\\node\node_global目录中已经存在yarn的文件夹

猜你喜欢

转载自blog.csdn.net/weixin_51623642/article/details/130170646