首页 > 解决方案 > 由于gevent导致heroku应用程序错误

问题描述

当我尝试推送到 Heroku 时,它的部署正确但显示应用程序错误。 在此处输入图像描述

无法更新,heroku 的日志如下

2018-09-13T04:54:13.237927+00:00 应用程序 [web.1]:导入 gevent

2018-09-13T04:54:13.237928+00:00 app[web.1]:文件“/app/.heroku/python/lib/python3.6/site-packages/gevent/init .py ”,第 41 行,在

2018-09-13T04:54:13.237930+00:00 app[web.1]: from gevent.hub import get_hub, iwait, wait

2018-09-13T04:54:13.237931+00:00 app[web.1]:文件“/app/.heroku/python/lib/python3.6/site-packages/gevent/hub.py”,第 289 行

2018-09-13T04:54:13.237932+00:00 app[web.1]:例外情况除外,例如:

2018-09-13T04:54:13.237933+00:00 应用 [web.1]: ^

2018-09-13T04:54:13.237934+00:00 app[web.1]: SyntaxError: 无效语法

2018-09-13T04:54:13.237936+00:00 应用 [web.1]: ]

2018-09-13T04:54:13.237944+00:00 应用[web.1]:

标签: pythondjangogitherokugevent

解决方案


好的,我看到了问题,您正在使用 Python 3 来运行您的 Heroku 应用程序。

该行2018-09-13T04:54:13.237931+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/gevent/hub.py", line 289特别说明您使用的是 Python 3.6 运行时,并且您使用的 gevent 库适用于 Python 2。(例外是使用 Python 2 语法)

检查runtime.txt您的项目根文件夹并确保它显示“python-2.7.15”,Heroku 有关于为您的应用程序指定 python 运行时的文档https://devcenter.heroku.com/articles/python-runtimes


推荐阅读