AWS Lambda“无法导入模块'处理程序':没有名为handler的模块”

时间:2017-10-26 15:59:50

标签: python python-2.7 amazon-web-services lambda

AWS Lambda'python2.7'找不到我的模块处理程序。

START RequestId: c6f97261-ba61-11e7-aeaf-bfb6aa28f7bb Version: $LATEST
Unable to import module 'handler': No module named handler

END RequestId: c6f97261-ba61-11e7-aeaf-bfb6aa28f7bb
REPORT RequestId: c6f97261-ba61-11e7-aeaf-bfb6aa28f7bb  Duration: 0.33 ms   Billed Duration: 100 ms Memory Size: 1024 MB    Max Memory Used: 19 M

handler.py

def handler(event, context):
    return {'status': 'success'}

文件夹结构:

  • handler.py

在Windows 10上编写,在Ubuntu VM上使用无服务器从主机系统的共享文件夹进行部署。 (virtualbox的)

1 个答案:

答案 0 :(得分:5)

原来这是一个许可问题。 运行chmod 644 handler.py然后重新部署修复了问题。

在我的情况下,这是由我的Ubuntu VM(Win10主机)上的共享文件夹部署引起的。 共享文件夹具有rwxrwx---权限,这对于AWS Lambda来说是不够的。 我需要复制文件夹并在复制的文件夹中运行chmod,然后从那里进行部署。