在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
。
5条答案
按热度按时间sq1bmfud1#
检查您当前的Python版本:
假设:
现在后藤
runtime.txt
**并指定Python的版本:语法:
python-<version>
*示例:
python-3.8.5
正确。Python-3.8.5
不正确。Python 3.8.5
不正确。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
。bksxznpy3#
只需在推送代码时升级runtime.txt文件中的版本。堆栈中官方支持的Python版本列表-
有关详细信息,请访问-https://devcenter.heroku.com/articles/python-support#supported-runtimes
c9qzyr3d4#
在我的例子中,我的Runtime.txt是:
我删除了
#Runtime.txt
行,它工作了!应用程序将假定您没有安装Python版本,并为您安装正确的版本。这是一个自动过程此外,您应该在推送之前提交更改。
szqfcxe25#
在我的例子中,我的Runtime.txt是:
将其更改为
请随时查看开发中心以了解支持的python版本。https://devcenter.heroku.com/articles/python-support#supported-runtimes