Heroku:找不到该应用程序/ Push被拒绝,无法编译Node.js应用程序

时间:2019-12-12 00:05:33

标签: node.js angular heroku deployment

我已经编写了一个Angular应用程序,希望将其部署到Heroku,但是我仍然遇到错误...

当尝试转到将我的应用程序部署到的Web URL时,出现以下错误:

not found

尝试推动时:git heroku push master我得到:

Push rejected, failed to compile Node.js app.

输入heroku日志-tail时,我得到以下信息

! Couldn't find that app.

但是在运行heroku应用程序时,它显示了我的app-name (eu)

在运行heroku info --app app-name时,我会得到我尝试过的确切网址。

我也尝试过heroku auth:login,但这无济于事。

我的package-json如下:

{ 
   "name":"app-name",
   "version":"0.0.0",
   "engines":{ 
      "node":"10.16.3"
   },
   "scripts":{ 
      "ng":"ng",
      "start":"node server.js",
      "heroku-postbuild":"ng build --prod",
      "build":"ng build",
      "test":"ng test",
      "lint":"ng lint",
      "e2e":"ng e2e"
   },
   "private":true,
   "dependencies":{ 
      "@angular/animations":"~8.2.11",
      "@angular/cdk":"~8.2.3",
      "@angular/common":"~8.2.11",
      "@angular/compiler":"~8.2.11",
      "@angular/cli":"1.4.9",
      "@angular/compiler-cli":"^4.4.6",
      "@angular/core":"~8.2.11",
      "@angular/forms":"~8.2.11",
      "@angular/material":"^8.2.3",
      "@angular/platform-browser":"~8.2.11",
      "@angular/platform-browser-dynamic":"~8.2.11",
      "@angular/router":"~8.2.11",
      "rxjs":"~6.4.0",
      "tslib":"^1.10.0",
      "zone.js":"~0.9.1",
      "typescript":"~2.3.3"
   },
   "devDependencies":{ 
      "@angular-devkit/build-angular":"~0.803.13",
      "@angular/cli":"~8.3.13",
      "@angular/compiler-cli":"~8.2.11",
      "@angular/language-service":"~8.2.11",
      "@types/jasmine":"~3.3.8",
      "@types/jasminewd2":"~2.0.3",
      "@types/node":"~8.9.4",
      "codelyzer":"^5.0.0",
      "enhanced-resolve":"^3.3.0",
      "jasmine-core":"~3.4.0",
      "jasmine-spec-reporter":"~4.2.1",
      "karma":"~4.1.0",
      "karma-chrome-launcher":"~2.2.0",
      "karma-coverage-istanbul-reporter":"~2.0.1",
      "karma-jasmine":"~2.0.1",
      "karma-jasmine-html-reporter":"^1.4.0",
      "protractor":"~5.4.0",
      "ts-node":"~7.0.0",
      "tslint":"~5.15.0",
      "typescript":"~3.5.3"
   }
}   

我在这里尝试过有关此主题的所有SO-answer,但没有任何效果。我已经创建了一个server.js文件,如下所示:

//Install express server
const express = require('express');
const path = require('path');

const app = express();

// Serve only the static files form the dist directory
app.use(express.static(__dirname + '/dist/app-name'));

app.get('/*', function(req,res) {

res.sendFile(path.join(__dirname+'/dist/app-name/index.html'));
});

// Start the app by listening on the default Heroku port
app.listen(process.env.PORT || 8080);

我还尝试取消注释和删除node_modules,但也尝试插入它,但仍然没有变化。

我还仔细检查了节点-v。

我的Procfile看起来像这样:

web: npm start

我在做什么错??

更新(传递文件结构):

file structure

更新(更新了我的package-json文件)

我已经对package.json文件进行了一些小的更新,因此没有将其推送到主文件,但是访问URL时仍然收到“未找到”消息。

日志-tail也显示“找不到该应用” ...非常令人沮丧...

1 个答案:

答案 0 :(得分:0)

我相信您会错过拼写应用名称的念头