请求的运行时(Python-3.7.3)无法用于此堆栈(heroku-18)

时间:2019-07-26 08:38:42

标签: python django heroku runtime-error

我正在使用Django 2.2.3,但出现此错误:

Requested runtime (Python-3.7.3) is not available for this stack (heroku-18)

但是,Heroku's Python documentationpython-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

5 个答案:

答案 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

  1. choco升级python -y

  2. refreshenv

  3. 关闭并重新打开代码编辑器,或重新启动系统。

再次检查了我的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 版本,现在它工作正常