推送至Heroku时出错:请求的运行时不可用于此堆栈

62lalag4  于 2022-11-13  发布在  其他
关注(0)|答案(5)|浏览(123)

在Heroku中创建了一个存储库之后,我想把我的项目从master分支推送到我的heroku存储库中。
在我第一次尝试时,我得到了以下错误消息:
无法检测到此应用程序的默认语言
在搜索之后,我使用了以下命令:

heroku buildpacks:set heroku/python

现在它给了我这个错误消息:
应用程序与构建包不兼容:https://buildpack-registry.s3.amazonaws.com/buildpacks/heroku/python.tgz
所以现在我从头开始尝试了所有的方法,它给了我下面的错误:
检测到Python应用程序
请求的运行时(“python-3.7.1”)不可用于此堆栈(heroku-18)。
我被困在这里了。
我确实有一个包含所有要求的requirements.txt和一个与我的manage.py文件在同一个文件夹中的runtime.txt

sq1bmfud

sq1bmfud1#

检查您当前的Python版本:

C:\Python --version

假设:

Python 3.8.5

现在后藤 runtime.txt**并指定Python的版本:
语法:
python-<version>*

示例

python-3.8.5正确
Python-3.8.5不正确
Python 3.8.5不正确

cdmah0mi

cdmah0mi2#

Heroku不支持Python 3.7.1,根据他们关于支持的运行时的文档。如果你想要Python 3.7,请将Python版本更改为3.7.2,如果你不想要Python 3.7,请将Python版本更改为3.6.8。
默认情况下,它使用Python 3.6.8,所以如果你想使用Python 3.7.2,你需要在你的应用的根目录下创建一个名为runtime.txt的文件,并在其中写入python-3.7.2

bksxznpy

bksxznpy3#

只需在推送代码时升级runtime.txt文件中的版本。堆栈中官方支持的Python版本列表-

  • Python-3.9.4
  • Python-3.8.9
  • python-3.7.10
  • python-3.6.13

有关详细信息,请访问-https://devcenter.heroku.com/articles/python-support#supported-runtimes

c9qzyr3d

c9qzyr3d4#

在我的例子中,我的Runtime.txt是:

# Runtime.txt
python-3.8.5

我删除了#Runtime.txt行,它工作了!应用程序将假定您没有安装Python版本,并为您安装正确的版本。这是一个自动过程
此外,您应该在推送之前提交更改。

szqfcxe2

szqfcxe25#

在我的例子中,我的Runtime.txt是:

# Runtime.txt
python-3.8.5

将其更改为

python-3.10.7

请随时查看开发中心以了解支持的python版本。https://devcenter.heroku.com/articles/python-support#supported-runtimes

相关问题