我在virtualenv中安装了ujson包
(mylambdaenv) C:\Users\xyz\lambda_code\mylambdaenv>pip install ujson
Collecting ujson
Using cached ujson-4.0.2-cp36-cp36m-win_amd64.whl (43 kB)
Installing collected packages: ujson
Successfully installed ujson-4.0.2
但是,在运行包时,它失败了,错误为no module ujson。我的包中有一个文件名为ujson.cp36-win\u amd64&;一个文件夹ujson-4.0.2.dist info。AWS Lambda不可读吗?请帮忙解决 错误
import ujson
ModuleNotFoundError: No module named 'ujson'
根据我的经验,向lambda函数添加依赖项的最佳方法是通过lambda layers和使用最近的AWS博客中描述的docker工具:
因此,您可以按如下方式向函数中添加
ujson
:创建空文件夹,例如
mylayer
转到该文件夹并创建包含以下内容的
requirements.txt
文件:该命令将为python3.8创建图层:
基于AWS控制台中的
mylayer.zip
创建lambda层。不要忘记指定Compatible runtime
到python3.8
将步骤6中创建的层添加到函数中
使用以下lambda函数在lambda中测试层:
我对此进行了测试,并正确地测试了功能和层工作:
附言
以上步骤是在linux上执行的。如果没有,您可以创建EC2Linux实例,并根据需要在那里执行步骤
相关问题 更多 >
编程相关推荐