Windows系统中使用fnm自动管理node版本

1. 安装 fnm

  • 使用 Windows 包管理器 Winget:

    复制代码
    winget install Schniz.fnm

安装完成后,fnm 的可执行文件大致已在你的系统中,但 还没完全"生效" ,因为还要做 Shell 配置。


2. 配置 PowerShell

允许执行脚本 & 在配置文件里载入 fnm 环境命令。

2.1 允许执行脚本

打开 PowerShell(可用管理员权限,但一般「当前用户」级别就够)然后执行:

sql 复制代码
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

这样可以让你的用户可以执行脚本。

2.2 编辑 PowerShell 配置文件(Profile)

在 PowerShell 中运行以下命令以打开(或创建)你的 profile 文件:

bash 复制代码
if (!(Test-Path -Path $PROFILE)) { New-Item -ItemType File -Path $PROFILE -Force }
Invoke-Item $PROFILE

然后在这个文件末尾添加下面这行:

css 复制代码
fnm env --use-on-cd --shell --resolve-engines powershell | Out-String | Invoke-Expression

这样做的目的:当你打开 PowerShell 或切换目录时,fnm 会设置好环境变量,以便 node/npm 路径正确并且切换版本生效。将 package.json#engines#node 视为有效的 Node.js 版本文件。然后关闭 PowerShell,再重新打开一个新窗口以让配置生效。 其他配置可见:github.com/Schniz/fnm/...


3. 使用 fnm 来安装 &切换 Node.js 版本

配置完毕后,就可以开始使用 fnm 来管理版本。下面是常用命令:

  • 安装某个版本:

    bash 复制代码
    fnm install 18.20.4
    # 或安装最新 LTS:
    fnm install --lts
  • 切换使用某个版本(当前 shell 会话立即生效):

    perl 复制代码
    fnm use 18.20.4
  • 查看当前使用的 Node 版本:

    sql 复制代码
    fnm current
  • 列出已安装版本:

    bash 复制代码
    fnm ls
  • 列出可安装的远程版本:

    复制代码
    fnm ls-remote
  • 设置某个版本为默认:

    arduino 复制代码
    fnm default 22.13.1
  • 在项目中指定版本:在项目根目录创建一个 .node-version(或 .nvmrc)文件,内容是版本号,例如 v18.20.4,然后每次进入该目录时 fnm 会自动切换(前提你配置了 --use-on-cd


相关推荐
醇氧1 小时前
CountDownLatch / CyclicBarrier / Semaphore 面试高频问答清单
前端·面试·职场和发展
qetfw3 小时前
MXU:Tauri 2 + React 的 MaaFramework 跨平台 GUI 源码
前端·python·react.js·前端框架·开源项目·效率工具
甲维斯3 小时前
我要开始吹牛逼了!Kimi K3 “宇宙无敌”!
前端·人工智能
a1117763 小时前
微光小屋-前端养成小游戏 开源项目
前端
kyriewen3 小时前
我让AI给前端项目做了一次完整的Code Review——它和人类的差距,比我想的大得多
前端·javascript·ai编程
张鑫旭3 小时前
快速过下我2026年上半年的前端学了些啥
前端
এ慕ོ冬℘゜4 小时前
前端基础:什么是时间戳?JS获取时间戳三种方法与实战用途
开发语言·前端·javascript
hoLzwEge4 小时前
拯救低效调试!code-inspector-plugin 让代码定位如虎添翼
前端·前端框架·node.js