我正在使用Django 2.2.3,但出现此错误:
Requested runtime (Python-3.7.3) is not available for this stack (heroku-18)
但是,Heroku's Python documentation说python-3.7.3
应该在堆栈heroku-18
中可用。
runtime.txt
包含Python-3.7.3
。
完全错误
Counting objects: 100% (43/43), done.
Delta compression using up to 4 threads
Compressing objects: 100% (36/36), done.
Writing objects: 100% (43/43), 10.70 KiB | 996.00 KiB/s, done.
Total 43 (delta 6), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: ! Requested runtime (Python-3.7.3) is not available for this stack (heroku-18).
remote: ! Aborting. More info: https://devcenter.heroku.com/articles/python-support
remote: ! Push rejected, failed to compile Python app.
remote:
remote: ! Push failed
答案 0 :(得分:1)
与Heroku生态系统中的其他所有事物一样,runtime.txt
区分大小写。将其内容更改为
python-3.7.3
带有小写的p
。
答案 1 :(得分:0)
我使用Windows10尝试将我的项目推送到Heroku中时发现了自己的错误。我的是Flask应用。
错误:
请求的运行时(Python-3.7.1)无法用于此堆栈 (heroku-18)
发生了什么事? 我的机器上确实安装了Python 3.7.1。 即使在将runtime.txt中声明为python-3.7.2时,我也遇到了错误。
我做了什么? 通过powershell(以管理员身份)检查了我的python版本:python --version 是3.7.1
然后通过Chocolatey升级了python。选中this answer。
choco升级python -y
refreshenv
关闭并重新打开代码编辑器,或重新启动系统。
再次检查了我的python版本:现在我有3.8.0,这是受支持的堆栈。
我确实回到我的项目并删除了virtualenv文件夹(我的是venv)。 从venv创建,依赖项安装和设置开始。
将python-3.8.0添加到runtime.txt中,然后重试整个heroku部署。
VOILÁ!
注意:请记住要更新您的环境变量和python路径。
注意2:请让我们知道您的结果或解决方案。
答案 2 :(得分:0)
我认为这个heroku堆栈与这个python版本不兼容,请尝试使用以下命令升级您的堆栈: heroku stack:set heroku-20 或尝试使用此 documentation
中的其他堆栈答案 3 :(得分:0)
我必须从此处列出的受支持 Python 版本中进行选择:https://devcenter.heroku.com/articles/python-support
答案 4 :(得分:-1)
我不知道它对你有什么帮助。我刚刚从我的 django 应用程序中删除了 requirements.txt 文件,然后 heroku 自动检测到了 python 版本,现在它工作正常