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

Azure Functions Node.js v4编程模型无法检测到函数求助

解决Azure Functions v4编程模型找不到函数的问题

针对你遇到的「No job functions found」问题,核心原因是Node.js v4编程模型不支持在package.json的main字段中使用递归通配符**,同时需要确保所有函数模块被显式加载。以下是具体解决步骤:

1. 创建统一入口文件

在src/functions目录下新建index.ts,用于导入所有函数文件,确保函数注册逻辑被执行:

// src/functions/index.ts
// 按实际目录结构导入所有函数模块
import './criteria/create';
import './criteria/getall';
import './criteria/getone';
import './events/getall';
import './ratings/create';
import './ratings/getcriteria';
import './ratings/rateone';

2. 修改package.json的main字段

将原来的通配符路径改为指向编译后的入口文件:

"main": "dist/src/functions/index.js"

3. 检查TypeScript编译配置

确保tsconfig.json的编译配置正确,保证dist目录结构与src一致:

{
  "compilerOptions": {
    "target": "ES2020",
    "module": "commonjs",
    "outDir": "./dist",
    "rootDir": "./src",
    "strict": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true
  },
  "include": ["src/**/*"]
}

4. 验证编译与运行

  • 重新执行编译命令(如npm run build),确认dist/src/functions下生成了index.js及所有函数的编译文件
  • 启动本地调试,此时Functions runtime会通过入口文件加载所有函数注册逻辑,即可识别到你的HTTP函数

补充说明

Azure Functions Node.js v4 runtime只会加载main字段指定的单个文件,不会递归扫描目录下的所有模块。因此必须通过入口文件显式导入所有包含app.http/app.eventHub等注册逻辑的文件,才能让runtime识别到函数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 15:22:24