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

Heroku部署Node.js应用报错:bash: app.js: command not found 如何解决

Heroku部署Node.js应用提示app.js: command not found解决方案

报错的核心原因是Procfile启动命令配置错误,系统尝试将app.js作为独立可执行文件运行,而没有通过Node.js解释器执行该文件。
launch.json是VS Code本地调试配置文件,Heroku部署过程中不会读取该文件,与本次报错无关。

具体解决方案

  • 修改Procfile内容,二选一即可:
    1. 直接指定Node执行:将Procfile原有内容替换为 web: node app.js
    2. 调用package.json预设的start脚本:将Procfile原有内容替换为 web: npm start
  • 补充端口监听逻辑(避免后续出现进程启动后立刻退出的崩溃问题):
    Heroku会自动为web进程分配PORT环境变量,不可写死本地端口,参考代码如下:
    const express = require('express');
    const app = express();
    // 优先读取Heroku分配的端口,本地开发默认使用3000
    const PORT = process.env.PORT || 3000;
    
    app.get('/', (req, res) => {
      res.send('服务运行正常');
    });
    
    app.listen(PORT, () => {
      console.log(`服务已启动,监听端口${PORT}`);
    });
    
  • 提交修改后重新推送到Heroku触发部署即可解决报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 02:57:03