You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Heroku部署Hello World应用遇ModuleNotFoundError报错求助

解决Heroku部署Python Web应用的ModuleNotFoundError问题

针对你遇到的ModuleNotFoundError: No module named 'hello.py'; 'hello' is not a package报错,以下是针对性的排查和解决步骤:

  • 修正Procfile配置
    Heroku通过Procfile确定启动命令,若你的入口文件是根目录下的hello.py,且文件内有可执行的Web应用实例(比如Flask的app = Flask(__name__)),Procfile必须写成:

    web: gunicorn hello:app
    

    注意不要带.py后缀——gunicorn需要的是模块名,不是文件名,写hello.py:app会导致Heroku将hello.py当作模块名去查找,自然找不到。

  • 核对项目结构
    如果你试图将hello作为Python包使用,必须在hello目录下创建空的__init__.py文件,同时将应用代码移至该目录内,此时Procfile要调整为web: gunicorn hello.app:app(假设app是__init__.py中定义的应用实例)。如果只是单文件hello.py,确保它在项目根目录,不需要额外创建包结构。

  • 确认依赖配置
    检查requirements.txt是否包含gunicorn,Heroku依赖它运行Python Web应用,文件内容需包含:

    gunicorn
    flask  # 替换为你实际使用的Web框架,比如django等
    
  • 本地预验证
    在本地终端执行gunicorn hello:app,如果本地也出现相同报错,说明问题出在本地配置而非Heroku环境,先在本地调试解决后再推送代码。

内容的提问来源于stack exchange,提问作者Joe Bonds

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 01:22:34