You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js Azure Function从Function Extensions 2.x升级3.x运行失败问题

解决Azure Function 2.x升3.x运行时不生效、启动失败问题

一、运行时版本固定为2.x的修复步骤

  • 先检查本地安装的Azure Functions Core Tools版本,在终端执行func --version,如果返回版本号为2.x.x,说明本地全局安装的工具就是旧版本,无论项目配置如何都会默认调用旧版运行时。直接卸载旧版工具,下载安装3.x版本的Azure Functions Core Tools即可。
  • 确认双配置文件的版本配置都已修改:
    1. local.settings.json的Values节点下添加"FUNCTIONS_EXTENSION_VERSION": "~3"
    2. 根目录host.json的顶层配置中添加"version": "3.0",不能只改local.settings.json的配置。
  • 检查VS Code相关配置:打开VS Code设置搜索azureFunctions.projectRuntime,确认选择的版本为~3;删除.vscode目录下的launch.json、tasks.json,避免旧启动参数硬编码指定2.x运行时。
  • 排查环境变量冲突:如果系统全局环境变量中设置了FUNCTIONS_EXTENSION_VERSION值为~2,会覆盖项目本地配置,删除该全局环境变量后重启终端即可。

二、升级后项目无法启动的适配步骤

  • 调整Node.js版本:Azure Function 3.x仅支持Node.js 12、14、16三个LTS版本,不要使用低于12或高于16的Node版本,切换到对应版本后重新安装依赖。
  • 更新项目依赖:删除node_modules文件夹和package-lock.json/yarn.lock文件,检查package.json的devDependencies中如果有azure-functions-core-tools依赖,将其版本号修改为3.x最新版,再重新执行npm install。
  • 清理运行缓存:删除项目根目录下的.func隐藏缓存文件夹,执行func start --build重新启动项目。
  • 检查废弃配置:删除host.json中2.x版本的废弃配置,例如旧版绑定专属配置、超过消耗计划上限的functionTimeout配置等。

内容的提问来源于stack exchange,提问作者Scuba Steve

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 18:27:03