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

上传Python模块Shapely为AWS Lambda层提示找不到模块问题求助

问题原因与解决方法

你遇到的报错核心是Python依赖包的打包路径不符合AWS Lambda层的规范:Lambda要求Python运行时的层依赖必须存放在压缩包根目录的python/路径下,你当前把依赖放在了shapely/路径下,Lambda运行时无法识别加载。

修复步骤

  • 调整打包目录结构,把之前创建的shapely文件夹重命名为python,再重新打包发布即可,修正后的完整操作命令如下:
mkdir folder
cd folder
virtualenv --python=python3.6 v-env 
source ./v-env/bin/activate
pip3 install shapely
deactivate
# 这里创建的目录必须是python,不能是自定义名称
mkdir python
cd python 
cp -r ../v-env/lib/python3.6/site-packages/* .
cd ..
zip -r shapely.zip python
aws lambda publish-layer-version --layer-name shapely --zip-file fileb://shapely.zip --compatible-runtimes python3.6

其他可选排查点

  • 确认Lambda函数的运行时版本和打包用的Python版本完全匹配,若你当前函数使用的是高于3.6的Python版本,打包时对应调整命令里的Python版本号即可。
  • 本地解压生成的shapely.zip检查结构,确认压缩包第一层就是python文件夹,python文件夹下直接存在shapely相关的包文件,无多余嵌套层级。
  • 若你是在Mac/Windows系统下打包,Shapely包含的二进制依赖可能和Lambda的Linux运行环境不兼容,可选择在Amazon Linux2容器环境下安装依赖再打包,避免二进制兼容问题。
  • 确认Lambda函数绑定的是最新发布的层版本,没有错选旧的错误版本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.16 08:45:08