Loading... # NVM - Node.js版本管理 为简单起见,建议在使用 NVM for Windows 之前卸载任何现有版本的 Node.js。删除可能保留的任何现有Node.js安装目录 ## Nvm 基本信息 > Github地址 > > nvm: [nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions (github.com)](https://github.com/nvm-sh/nvm) > > nvm-windows: [coreybutler/nvm-windows: A node.js version management utility for Windows. Ironically written in Go. (github.com)](https://github.com/coreybutler/nvm-windows) **Node Version Manager(NVM)** 是一种用于管理多个主动节点.js版本的工具。 * 原版nvm是只支持 mac/linux * 这里使用的是nmv-windos 也就是windows版本的 Node.js平台,Node.js工具社区和Node.js库是快速移动的目标 - 在一个Node.js版本下可能有效的方法不能保证适用于另一个版本的Node.js。因此,用户需要一些方法在 Node 的多个版本之间切换.js  ## 为什么使用 NVM? NVM 允许用户: * 使用简单的命令在本地下载任何远程长期支持 (LTS) 版本的 Node.js。 * 直接从命令行在 Node.js 的多个版本之间轻松切换。 * 设置别名以轻松在不同下载版本的 Node.js之间切换。 ## 下载安装 Nvm-windows ### 下载地址 Github: [Releases · coreybutler/nvm-windows (github.com)](https://github.com/coreybutler/nvm-windows/releases)  ### 版本说明 [nvm-noinstall.zip (github.com)](https://github.com/coreybutler/nvm-windows/releases/download/1.1.12/nvm-noinstall.zip) : 这个是绿色免安装版本,使用之前需要配置. [nvm-setup.exe (github.com)](https://github.com/coreybutler/nvm-windows/releases/download/1.1.12/nvm-setup.exe): 这是一个安装包,下载之后点击安装,无需配置就可以使用. [nvm-setup.zip (github.com)](https://github.com/coreybutler/nvm-windows/releases/download/1.1.12/nvm-setup.zip):压缩包里面套安装包,下载之后可以解压安装. [Source code (zip) (github.com)](https://github.com/coreybutler/nvm-windows/archive/refs/tags/1.1.12.zip):zip压缩的源码. [Source code (tar.gz) (github.com)](https://github.com/coreybutler/nvm-windows/archive/refs/tags/1.1.12.tar.gz):tar.gz的源码,一般用于linux系统. ### 安装 Nvm 个人不太喜欢exe安装程序, 虽然说是可以傻瓜化安装和自动配置, 但是我还是更喜欢那种自己完全掌控的感觉, 所以我选择 下载 `nvm-noinstall.zip` 来自己配置. > 但是也预览一下安装包的安装界面: > >  **进入正题** 解压nvm文件到自己的本地目录中  由于现在没有进行任何配置就只能在当前路径中使用nvm命令 使用 `nvm version` 命令查询当前nvm的版本号, 如果想要在全局都可以使用nvm就需要配置环境变量  ### 环境变量配置 配置环境变量使得nvm在全局可用, 右键状态栏的徽标点击 `系统` > `高级系统设置` > 右下角的 `环境变量` 可以配置的环境变量有: * `NVM_HOME` nvm安装目录 会包含使用nvm下载的所有版本 Node、npm * `NVM_SYMLINK` 标识为使用的 Nodejs 存放路径 * `Path` 配置nvm脚本目录以实现全局使用nvm命令 我这里直接使用 `PowerToys` 自带的环境变量工具来编辑了 (Windows推荐使用的一款工具)  效果是一样的  **便携版需要配置 exe安装包无视** 需要在nvm的安装目录下新建一个 `settings.txt` 文件 里面配置上两个地址 一个是 root 也就是nvm安装的根路径, 还有一个是path 就是当前正在使用的nodejs路径 Github示例配置: ```txt root: C:\Users\Corey\AppData\Roaming\nvm path: C:\Program Files\nodejs arch: 64 proxy: none ``` 我的配置如下: ```txt root: E:\build\nvm\nvm-noinstall-1.1.12 path: E:\package\nodejs ```  到这里nvm的安装配置就完成了, 可以在任意路径使用nvm 并且nvm和nodejs的路径都在我们了解的路径里 可在控制台的任意路径输入 `nvm` 查看帮助菜单  ## Nvm 基本使用 前面使用过 `nvm -v` or `nvm version` 命令来查看当前系统使用的nvm版本, 下面是一些nvm的常用命令 * `nvm -v` or `nvm version` 查看nvm版本 * `nvm list available` 查看线上可下载的node版本 * `nvm ls` or `nvm list` 查询本地可使用的node列表 * `nvm install latest` 安装最新版本node * `nvm install <version>` 安装指定版本node * `nvm use <version>` 切换到指定node版本 * `nvm uninstall <version>` 卸载指定node版本 * `nvm node_mirror <node_mirror_url>` 设值node镜像地址 * `nvm npm_mirror <npm_mirror_url>` 设置npm镜像地址 这是Github上的示例说明: ```bash 适用于 Windows 的 NVM 是一个命令行工具。只需在控制台中键入即可获取帮助。基本命令包括:nvm nvm arch [32|64]:显示节点是在 32 位还是 64 位模式下运行。指定 32 或 64 以覆盖默认体系结构。 nvm check:检查 NVM4W 进程中是否存在已知问题。 nvm current:显示活动版本。 nvm install <version> [arch]:版本可以是特定版本,“latest”表示最新的当前版本,“lts”表示最新的 LTS 版本。(可选)指定是安装 32 位还是 64 位版本(默认为 system arch)。将 [arch] 设置为“all”以安装 32 位和 64 位版本。添加到此命令的末尾以绕过远程下载服务器的 SSL 验证。--insecure nvm list [available]:列出node.js安装。在末尾键入以显示可供下载的版本列表。available nvm on:启用node.js版本管理。 nvm off:禁用node.js版本管理(不卸载任何内容)。 nvm proxy [url]:设置用于下载的代理。留空以查看当前代理。设置为“none”以删除代理。[url][url] nvm uninstall <version>:卸载特定版本。 nvm use <version> [arch]:切换为使用指定版本。(可选)使用 、 或 。 是最新安装的版本。(可选)指定 32/64 位体系结构。 将继续使用所选版本,但切换到 32/64 位模式。有关在特定目录中使用(或使用 )的信息,请参阅问题 #16。latestltsnewestnewestnvm use <arch>use.nvmrc nvm root <path>:设置 nvm 应存储不同版本node.js的目录。如果未设置,将显示当前根目录。<path> nvm version:显示当前运行的 NVM for Windows 版本。 nvm node_mirror <node_mirror_url>:设置节点镜像。中国可以使用 https://npmmirror.com/mirrors/node/ nvm npm_mirror <npm_mirror_url>:设置 npm 镜像。中国可以使用 https://npmmirror.com/mirrors/npm/ ``` ### 查看可下载的Nodejs版本 `CURRENT` 是最新版本, `LTS` 是长期支持版本(推荐) * **Current 版本**:Current 版本是 Node.js 的最新开发版本,通常每隔几个月发布一次。它包含最新的功能、改进和实验性特性,但不太稳定。Current 版本的目标是提供给开发人员一个平台来尝试新的功能和实验性特性,以便反馈和测试。 * **LTS 版本**:LTS(Long-Term Support)版本是 Node.js 的长期支持版本,通常每隔两年发布一次。LTS 版本的主要特点是稳定性和可靠性。它们接受持续的维护和安全更新,以确保企业和生产环境的稳定性。 ```bash nvm list available ```  ### 下载Nodejs 使用 `nvm install <version>` 即可下载指定版本 也可以直接使用 `nvm install latest` 来下载最新node版本 ```bash nvm install 18.20.0 ``` 如果网络不好的可以设置一下下载镜像地址, 执行如下命令或者在 之前创建的 `settings.txt` 配置文件中添加 ```bash # 命令设置(命令也是将镜像地址添加到配置文件中) nvm node_mirror https://npmmirror.com/mirrors/node/ nvm npm_mirror https://npmmirror.com/mirrors/npm/ ``` ```txt # 配置文件设置 node_mirror: https://npmmirror.com/mirrors/node/ npm_mirror: https://npmmirror.com/mirrors/npm/ ``` 下载node打印如下内容就是成功下载  ### 查看和激活Nodejs #### 查看已安装的node ```bash nvm list ``` #### 查看当前激活node ```bash nvm current ``` #### 激活指定版本node ```bash nvm use <version> # 也可以使用 nvm use latest 来快速切换为最新版本(前提是已经安装最新版本node) ```  然后我再安装一个最新版进行激活切换 ```bash nvm install latest nvm use latest ```  ### 卸载Nodejs 可以使用 `nvm uninstall <version>` or `nvm uninstall latest` 来卸载指定版本或者最新版本 如果卸载的当前使用的版本那么会把激活创建的快捷方式也一起删除, 卸载后该版本内下载的全局依赖也会随node的卸载一起被删掉 ```bash nvm uninstall latest ```  ### 使用NPM下载软件包 使用nvm管理的node和npm, 在使用 `npm install -g xxxx` 时, 默认全局路径是在当前使用的node版本的node_modules目录中 下载个 `jquery` 试一下 ```bash npm install jquery # 如果执行 npm install -g jquery 依赖会被下载到 v22.2.0/node_modules 中 ```  ### 配置NPM镜像地址 npm默认的镜像源是 `https://registry.npmjs.org/` 如果需要使用国内镜像可以使用命令进行切换 ```bash # 切换淘宝镜像源 npm config set registry https://registry.npmmirror.com ``` ## 开启或关闭Nvm ### 开启Nvm 安装配置完成后 Nvm默认就是开启状态 `nvm on` 开启Nvm 后默认本地最新版本 `nvm use <version>` or `nvm use latest` 可以指定版本并开启Nvm ```bash nvm on ``` ### 关闭Nvm 需要注意的是关闭Nvm后由Nvm下载和管理的node版本就都无法使用(即使是激活状态) ```bash nvm off ```  最后修改:2024 年 06 月 05 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 1 如果文章有帮助到你,请随意赞赏