Heroku部署Python应用时导入src模块遇ModuleNotFoundError问题
问题原因及解决方法
核心错误:未提交src目录到Git
你执行git add时仅添加了src文件夹内的单个文件,未将整个src目录纳入版本控制。Heroku部署仅同步Git仓库中的内容,导致服务器上不存在src文件夹,触发ModuleNotFoundError。
修复步骤:
- 若未完成提交,先撤销之前的单个文件添加操作:
git reset HEAD AccessToken.py AccessToken2.py ChatTokenBuilder2.py DynamicKey.py DynamicKey2.py DynamicKey3.py DynamicKey4.py DynamicKey5.py Packer.py RtcTokenBuilder.py RtcTokenBuilder2.py RtmTokenBuilder.py RtmTokenBuilder2.py SignalingToken.py education_token_builder.py fpa_token_builder.py utils.py - 添加整个
src目录到Git:git add src/ - 提交并推送到Heroku:
git commit -m "Add src directory for Agora token generation" git push heroku master
额外检查点:确保src为合法Python包
确认src文件夹内存在__init__.py(可为空文件),Python才会将其识别为可导入的包。若从GitHub下载的src目录无此文件,手动创建空的__init__.py后提交到Git即可。
导入路径验证
确认主文件与src目录处于项目根目录同级,此时from src.RtcTokenBuilder2 import ...的导入语句才有效。根据你描述的无导入时应用正常的情况,层级关系应无问题,核心问题仍为Git提交遗漏。
内容的提问来源于stack exchange,提问作者Ahmed Zaidan
相关产品推荐
相关产品推荐

