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

Heroku执行python3 app.py提示bash: app.py: command not found错误:原因及解决

问题分析与修复方案

嘿,这个错误我之前在Heroku部署项目时也碰到过,咱们一步步来解决:

错误本质

bash: app.py: command not found 其实就是说Heroku的运行容器里找不到你指定的app.py文件,大概率是下面两种情况导致的:

  • 本地的app.py没被正确推送到Heroku服务器
  • 你执行命令时的路径和app.py实际所在路径不匹配

具体修复步骤

1. 先确认本地文件与Git提交状态

  • 先在本地当前目录(D:\Py\PyDiscord\coronabot\covid19krbot)执行dir(Windows)或ls(Mac/Linux),确认app.py确实存在
  • 检查.gitignore文件,看看app.py是不是被加入了忽略列表。如果被忽略了,把它从.gitignore里删掉,然后执行以下命令把文件推送到Heroku:
    git add app.py
    git commit -m "Include app.py in Heroku deployment"
    git push heroku main
    
    (如果你的主分支不是main,换成对应的分支名比如master)

2. 验证Heroku服务器上的文件

执行下面的命令查看Heroku容器里的文件列表,确认app.py已经上传:

heroku run ls

如果输出里看不到app.py,说明代码推送失败,回到第一步重新操作。

3. 调整命令路径(如果文件不在根目录)

如果你的app.py在子目录里(比如src/app.py),那执行命令时要带上完整路径:

heroku run python3 src/app.py

4. 推荐:用Procfile规范启动命令

Heroku官方更推荐用Procfile来定义启动命令,避免每次手动输入出错:

  • 在项目根目录创建一个名为Procfile(注意没有任何后缀名)的文件,根据你的应用类型写入内容:
    • 若是Web应用:web: python3 app.py
    • 若是后台worker任务:worker: python3 app.py
  • 提交并推送这个文件到Heroku:
    git add Procfile
    git commit -m "Add Procfile for Heroku deployment"
    git push heroku main
    

之后你就不用手动执行heroku run python3 app.py了,Heroku会自动按照Procfile的配置启动你的应用。

内容的提问来源于stack exchange,提问作者Inseo Yang

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 23:53:13