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


相关推荐
Mintopia5 分钟前
🤖 AI 决策 + 意图OS:未来软件形态的灵魂共舞
前端·人工智能·react native
攀登的牵牛花6 分钟前
前端向架构突围系列 - 框架设计(四):依赖倒置原则(DIP)
前端·架构
程序员爱钓鱼14 分钟前
Node.js 编程实战:测试与调试 —— 日志与监控方案
前端·后端·node.js
Mapmost22 分钟前
数字孪生项目效率翻倍!AI技术实测与场景验证实录
前端
小酒星小杜26 分钟前
在AI时代,技术人应该每天都要花两小时来构建一个自身的构建系统-Input篇
前端·程序员·架构
Cache技术分享34 分钟前
290. Java Stream API - 从文本文件的行创建 Stream
前端·后端
陈_杨37 分钟前
前端成功转鸿蒙开发者真实案例,教大家如何开发鸿蒙APP--ArkTS 卡片开发完全指南
前端·harmonyos
小杨同学4943 分钟前
C 语言实战:枚举类型实现数字转星期(输入 1~7 对应星期几)
前端·后端
陈_杨44 分钟前
前端成功转鸿蒙开发者真实案例,教大家如何开发鸿蒙APP--ArkTS 卡片刷新机制
前端·harmonyos
go_caipu1 小时前
Vben Admin管理系统集成qiankun微服务(二)
前端·javascript