资讯动态

Midway 开发环境 Node.js 安装指南:基于 nvs 的版本管理与多平台实践

发布时间:2026/10/10 11:04:44 来源:尧图企业网站定制
后端微服务云原生【免费下载链接】midway A Node.js Serverless Framework for front-end/full-stack developers. Build the application for next decade. Works on AWS, Alibaba Cloud, Tencent Cloud and traditional VM/Container. Super easy integrate with React and Vue. 项目地址https://gitcode.com/gh_mirrors/mi/midway点击查看免费下载Midway 是一个面向前端/全栈开发者的 Node.js Serverless 框架其本地开发、构建与部署全链路都依赖一个稳定可切换的 Node.js 运行时。本文以 Midway 官方 v3 文档中《How to install Node.js environment》为核心完整讲解基于跨平台版本管理器 nvs 的 Node.js 安装、镜像配置、版本切换、全局模块复用以及 Mac 芯片低版本 Node 的兼容方案并结合仓库中的 engines 声明给出适配当前 Midway 版本的选型依据帮助你在一台机器上从容管理多套 Node.js 环境。使用场景为什么需要版本管理工具通常情况下直接从 Node.js 官方站点 下载对应安装包即可完成环境配置。但在本地开发on-premises过程中你常常需要快速升级 Node.js 到新版本以适配新框架特性在多个项目之间来回切换不同 Node 版本例如旧项目停留在 v16新项目要求 v20验证某个依赖在特定 Node 大版本下的兼容性。社区对此已有 nvm、n 等成熟方案而 Midway 官方文档推荐的是nvsNode Version Switcher。选择 nvs 的理由有两点nvs 是跨平台的同一套工具可覆盖 Linux、macOS 与 Windows不必在不同系统上学习不同的版本管理习惯nvs 基于 Node 编写开发者可以参与其源码维护遇到问题可自行排查甚至贡献修复。需要说明的是nvs 通常仅用于本地开发。生产环境尤其是 Serverless 平台与容器/VM 部署的 Node 版本一般由运维侧统一控制本文不涉及线上版本治理。版本现状尽早离开已 EOL 的 Node官方文档明确提醒Node.js 12.x 与 14.x 均已进入 End-of-LifeEOL请尽快升级到 16 或 18。而站在当前仓库的角度版本要求已进一步收紧仓库根目录的 package.json 声明了engines: { node: 20, pnpm: 9 }各子包如 packages/bootstrap/package.json同样声明node: 20。因此如果你要基于本仓库源码构建或调试 Midway v3 以上版本建议直接选择 Node.js 20 及以上版本16/18 仅作为历史项目的下限参考。完整的版本生命周期可参考仓库中的 维护计划 文档。如何安装 nvsLinux / macOS 环境在 Linux 与 macOS 上nvs 通过 Git Clone 方式安装依次执行以下命令$ export NVS_HOME$HOME/.nvs $ git clone https://github.com/jasongin/nvs --depth1 $NVS_HOME $ . $NVS_HOME/nvs.sh installNVS_HOME指定 nvs 的安装目录默认~/.nvs后续下载的各个 Node 版本也存放于此--depth1只拉取最新提交加快克隆速度最后一条命令nvs.sh install会把 nvs 的初始化代码写入你的 Shell 配置文件如~/.bashrc新开终端即可使用nvs命令。Windows 环境Windows 的环境变量与 Shell 配置较为复杂官方文档建议直接使用msi安装包完成初始化访问 nvs/releases 下载最新版nvs.msi双击安装即可安装过程会一并处理好 PATH 与初始化脚本。配置镜像地址在国内网络环境下从默认的https://nodejs.org/dist/下载 Node 发行包可能较慢或不可达需要将 Node 下载源切换到国内镜像$ nvs remote node https://npmmirror.com/mirrors/node/ $ nvs remote default node chakracore https://github.com/nodejs/node-chakracore/releases/ chakracore-nightly https://nodejs.org/download/chakracore-nightly/ nightly https://nodejs.org/download/nightly/ node https://nodejs.org/dist/nvs remote node url用于修改名为node的远端下载源指向 npmmirror 镜像后可明显提升国内下载速度与成功率nvs remote不带参数列出全部远端源配置。除node正式发行版外还包括chakracore、chakracore-nightlyChakraCore 引擎变体、nightly每日构建等default列显示当前默认使用的远端为node。使用指南安装、切换与默认版本安装最新LTS长期支持版本并设为默认# 安装最新 LTS 版本 $ nvs add lts # 配置为默认版本 $ nvs link ltsnvs add lts会自动解析当前 LTS 主版本号并下载对应二进制nvs link lts把该版本软链为全局默认新开的 Shell 都会直接使用它。安装并试用其他版本# 安装其他版本并试用例如 12.x $ nvs add 12 # 查看已安装的版本列表 $ nvs ls # 在当前 Shell 中切换版本 $ nvs use 12nvs add 12允许只写主版本号nvs 会自动选择该主版本的最新小版本也可写完整版本号如nvs add 12.22.12nvs ls列出本地已下载的所有版本带*或特殊标记的为当前使用/默认版本nvs use 12仅对当前终端会话生效适合临时验证如需持久化默认请使用nvs link更多子命令与参数见nvs --help。常用命令速查命令作用nvs add version下载并安装指定版本支持lts、主版本号、完整版本号nvs ls查看本地已安装的 Node 版本nvs use version在当前 Shell 临时切换到指定版本nvs link version设置默认版本持久化nvs remote name url修改远端下载源无参数时列出全部远端配置nvs --help查看完整帮助信息统一 npm 全局模块路径使用 nvs 时npm 的默认prefix指向当前激活的 Node 版本安装目录。这意味着每次切换版本后之前安装的全局命令模块如midway-bin、ts-node、pnpm等都需要重新安装非常不便。解决办法是把全局模块统一安装到独立目录~/.npm-global$ mkdir -p ~/.npm-global $ npm config set prefix ~/.npm-global同时需要在~/.bashrc或~/.zshrc中配置环境变量并生效$ echo export PATH~/.npm-global/bin:$PATH ~/.zshrc $ source ~/.zshrc配置完成后无论nvs use切换到哪个 Node 版本~/.npm-global/bin下的全局命令始终可用再配合nvs link固定的默认版本本地开发体验会非常稳定。注意如果你使用的是zsh将命令写入~/.zshrc若是bash则写入~/.bashrc。Mac SiliconM1/M2 等 Apple 芯片安装低版本 Node.jsApple 芯片arm64 架构下Node.js 16 以下没有官方 arm64 构建版本因此无法直接安装 Node.js 14 等低版本。所幸可以通过 Apple 的Rosetta翻译层让为 Intel 芯片构建的应用在 Apple Silicon 上运行间接解决分为两步安装 Rosetta切换到 Intel 环境再安装低版本 Node.js。第一步安装 Rosetta在终端执行$ /usr/sbin/softwareupdate --install-rosetta --agree-to-license--agree-to-license表示自动同意许可协议避免交互确认。第二步切换到 Intel 环境并安装低版本 Node.js打开终端执行arch确认当前运行架构为arm64执行arch -x86_64 zsh打开一个 x86_64Intel模拟的新终端再次执行arch确认当前运行架构变为i386使用上文提到的 nvs或 nvm安装低版本 Node.js。注意在 Rosetta 模拟的 Intel 环境下安装的 Node.js 以 x86_64 二进制运行性能与原生 arm64 存在差距仅作为兼容低版本依赖的过渡手段Node.js 16 及以上已有官方 arm64 构建Apple 芯片用户应优先使用原生版本。小结围绕 Midway 本地开发环境本文完整覆盖了 nvs 的安装Linux/macOS 与 Windows、国内镜像配置、LTS/多版本安装与切换、统一全局模块路径以及 Apple 芯片上的低版本兼容方案。结合仓库根目录engines.node 20的约束建议新项目直接使用 Node.js 20历史项目需要低版本时再通过 Rosetta 方案兜底。掌握这套环境管理方法后你可以在同一台机器上随时验证 Midway 不同版本与 Node 版本的组合为开发与排障提供稳定的运行时基础。赞分享后端微服务云原生【免费下载链接】midway A Node.js Serverless Framework for front-end/full-stack developers. Build the application for next decade. Works on AWS, Alibaba Cloud, Tencent Cloud and traditional VM/Container. Super easy integrate with React and Vue. 项目地址https://gitcode.com/gh_mirrors/mi/midway点击查看免费下载相关推荐Midway 开发环境 Node.js 版本管理实战基于 nvs 的跨平台安装、切换与镜像加速指南Midway 开发环境 Node.js 版本管理实战基于 nvs 的跨平台安装、切换与镜像加速指南 本篇技术指南围绕 Midway 项目开发中常见的 Node后端微服务云原生Midway 开发环境搭建用 nvs 实现 Node.js 多版本安装与切换Midway 开发环境搭建用 nvs 实现 Node.js 多版本安装与切换 本篇指南围绕 Midway 项目开发的前置环境问题展开讲解如何在本地通过跨平台后端微服务云原生macOS 开发环境指南Node.js 安装、版本管理与 npm/yarn 包管理macOS 开发环境指南Node.js 安装、版本管理与 npm/yarn 包管理 Node.js 是基于 Chrome V8 引擎的 JavaScript文档教程开发工具上一篇5分钟上手CH55xduino用Arduino IDE玩转低成本USB单片机下一篇FinalBurn Neo开启你的复古游戏终极发现之旅创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑