我正在尝试为 AWS Lambda 创建一个 python 部署包。我已遵循创建部署包 (Python)
中指定的文档在测试创建 Lambda 函数时,我收到以下错误:
No module named pkg_resources
在调试时,发现
pint
包需要这个pkg_resources
。 AFAIK,pkg_resources
将在 Python 发行版安装期间创建。
我假设由于 Python 已经在 Lambda 服务器上可用,它也应该有
pkg_resources
。
我在这里缺少什么?有人可以帮忙吗?
在投票之前:如果这是这个问题的错误论坛,请对该问题发表评论,我将转向正确的论坛。
确保所有软件包可供您使用的一个好方法是安装
AWS AMI
中的所有依赖项。它在引导时提供与 lambda 相同的环境。这样您就可以找出系统上安装的 AWS AMI
python 和 python 中缺少哪些软件包。您可能想看看像 serverless 这样的框架,它有像 serverless-python-requirements 这样的插件,可以为您构建包。我通常创建一个 venv
并检查一切是否正常。这里是链接,它向您展示了如何做到这一点。
经过一番研究,您需要将一个库添加到requirements.txt文件中: 设置工具
之后就没问题了!