1、nvm、Brew、fnm综合对比分析表
特性 | nvm | Brew | fnm |
---|---|---|---|
定位 | Node.js 版本管理 | 通用包管理器 | 高性能 Node.js 版本管理 |
开发语言 | Shell | Ruby | Rust |
支持平台 | Linux/macOS,有限支持 Windows | macOS/Linux | Linux/macOS/Windows |
版本切换速度 | 较慢 | 不支持多版本切换 | 非常快 |
资源占用 | 较高 | 中等 | 较低 |
安装简单性 | 易用 | 非常简单 | 易用 |
社区生态 | 非常广泛 | 非常广泛 | 生态较小 |
适用场景 | Node.js 多版本切换 | 通用工具安装 | 高效 Node.js 切换 |
2、官网windos系统下安装fnm脚本文档
# 安装 fnm (快速 Node 管理器)
winget install Schniz.fnm# 配置 fnm 环境fnm env --use-on-cd | Out-String | Invoke-Expression# 下载并安装 Node.jsfnm use --install-if-missing 22# 验证环境中是否存在正确的 Node.js 版本node -v # 应该打印 `v22.11.0`# 验证环境中是否存在正确的 npm 版本npm -v # 应该打印 `10.9.0`
按上面的文档在Windows PowerShell命令行执行:winget install Schniz.fnm 报错:无法将“winget”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。看提示就是windows 10默认是没有WinGet命令的,需要手动去安装。去微软官网了解WinGet 是一种命令行工具,使用户能够在 Windows 10、Windows 11 和 Windows Server 2025 计算机上发现、安装、升级、删除和配置应用程序。 此工具是 Windows 程序包管理器服务的客户端接口。
安装WinGet
WinGet Windows 程序包管理器在 Windows 11、新式版本的 Windows 10 和 Windows Server 2025 上作为应用安装程序的一部分提供。 应用安装程序是由 Windows 桌面版本上的Microsoft存储通过 Windows Server 2025 上的更新传递和更新的系统组件。
备注
WinGet 命令行工具仅在 Windows 10 1709(版本 16299)或更高版本上受支持。 在首次以用户身份登录 Windows 之前,WinGet 将不可用,触发 Microsoft 应用商店将Windows 程序包管理器注册为异步进程的一部分。 如果最近已经以用户身份进行了首次登录,但发现 WinGet 尚不可用,则可以打开 PowerShell 并输入以下命令来请求此 WinGet 注册:Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe
。(执行完这条命令后要重开Windows PowerShell命令行)
重开Windows PowerShell命令行后输入: winget -v 能显示出版本号就可以继续复制上面的fmm安装脚本:winget install Schniz.fnm了。安装成功后也会提示要重开一次Windows PowerShell,要不会提示fnm命令无法识别。然后按脚本步骤一步一步执行配置就可以了。
3、(winget命令正常执行的跳过这步)
如果执行(Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe)脚本后winget命令还是报错的,那就手动下载安装文件: Releases · microsoft/winget-cli · GitHub,截止发文时最新稳定版本是:https://github.com/microsoft/winget-cli/releases/download/v1.9.25200/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle
下载完成后找到本地文件路径Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle是一个.msixbundle后缀的文件。
然后在Windows PowerShell命令行执行安装命令:Add-AppxPackage -path C:\你的路径\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle
成功运行后再次winget -v 版本号就出来了。然后按Node官方安装脚本一步一步执行就可以了。Node.js — 下载 Node.js®