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

Serverless本地运行Lambda函数报No module named 'handler'错误求助

问题解决说明

该报错与Python安装无关,核心原因是你混淆了Node.js全局依赖和Python Lambda运行的模块要求:你全局安装的handler属于Node.js生态包,无法被Python运行时识别,Python Lambda要求你的项目本地存在对应的handler.py模块文件。

排查步骤

  • 确认执行serverless offline命令的工作目录,必须和serverless.yml所在目录保持一致
  • 检查项目根目录下是否存在handler.py文件,若你在serverless.yml中配置的函数handler字段为handler.xxx,就必须存在该文件
  • 核对serverless.yml的函数配置格式是否正确,示例如下:
    functions:
      testFunc:
        handler: handler.entry # handler对应handler.py,entry是你在handler.py中定义的入口函数名
        runtime: python3.9
    plugins:
      - serverless-offline
      - serverless-python-requirements
    
  • Python项目依赖不要全局安装,在项目根目录新建requirements.txt写入所需Python依赖,由serverless-python-requirements插件统一管理加载。

快速验证方法

你可以在项目根目录新建测试用handler.py,写入如下内容后重新运行serverless offline验证:

import json

def entry(event, context):
    return {
        "statusCode": 200,
        "body": json.dumps({"status": "success"})
    }

同时将serverless.yml中对应函数的handler字段修改为handler.entry即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 11:27:03