Heroku推送Django项目报错找不到Django 3.2.8版本如何解决?
Heroku部署失败解决方法
核心错误原因
部署日志里的No matching distribution found for Django-3.2.8报错,本质是你的requirements.txt依赖声明格式错误:pip要求依赖包名称和版本号之间必须使用==连接,但你当前文件中除了前3个依赖,其余所有依赖都错误使用了-连接,pip会将Django-3.2.8整串识别为包名去镜像源查找,自然找不到对应安装包。
具体修复步骤
- 第一步:修正
requirements.txt中所有依赖的格式,将包名和版本号之间的-全部替换为==,修改后的正确内容如下:
Gunicorn==20.1.0 Jinja2==2.11.2 Django-Heroku==0.3.1 Django==3.2.8 asgiref==3.4.1 azure-core==1.19.0 azure-storage-blob==12.9.0 certifi==2021.10.8 cffi==1.15.0 charset-normalizer==2.0.7 cryptography==35.0.0 django-storages==1.12.2 idna==3.3 isodate==0.6.0 msrest==0.6.21 oauthlib==3.1.1 pycparser==2.20 pytz==2021.3 requests==2.26.0 requests-oauthlib==1.3.0 six==1.16.0 sqlparse==0.4.2 urllib3==1.26.7
- 第二步:提交修改后的文件到git仓库,重新执行推送即可
- 如果你在本地main分支开发,执行以下命令:
git add requirements.txt git commit -m "修正requirements.txt依赖格式错误" git push heroku main- 如果你在其他本地分支开发,执行以下命令:
git add requirements.txt git commit -m "修正requirements.txt依赖格式错误" git push heroku 你的本地分支名:main
额外说明
你之前为了适配pg_config安装PostgreSQL和Visual Studio的操作,和本次报错没有关联,不需要调整。
内容的提问来源于stack exchange,提问作者VaultDweller
相关产品推荐
相关产品推荐

