为什么在将应用程序部署到 Heroku 时出现此错误?
Why do I obtain this error when deploying app to Heroku?
我在使用 git hub 将我的应用程序部署到 heroku 时遇到了某种错误。问题是,我不明白 heroku 日志和随之而来的错误。这是 heroku 日志:
Marcuss-MacBook-Pro:Weather-App marcushurney$ heroku logs
2016-01-05T14:37:27.798077+00:00 app[web.1]: npm ERR! Please include the following file with any support request:
2016-01-05T14:37:27.798377+00:00 app[web.1]: npm ERR! /app/npm-debug.log
2016-01-05T14:37:27.786949+00:00 app[web.1]: npm ERR! node v5.1.1
2016-01-05T14:37:27.786556+00:00 app[web.1]: npm ERR! argv "/app/.heroku/node/bin/node" "/app/.heroku/node/bin/npm" "start"
2016-01-05T14:37:27.787856+00:00 app[web.1]: npm ERR! npm v3.3.12
2016-01-05T14:37:28.776245+00:00 heroku[web.1]: Process exited with status 1
2016-01-05T14:37:28.789412+00:00 heroku[web.1]: State changed from starting to crashed
2016-01-05T17:27:16.684869+00:00 heroku[web.1]: State changed from crashed to starting
2016-01-05T17:27:17.853743+00:00 heroku[web.1]: Starting process with command `npm start`
2016-01-05T17:27:20.423495+00:00 app[web.1]: npm ERR! node v5.1.1
2016-01-05T17:27:20.423130+00:00 app[web.1]: npm ERR! argv "/app/.heroku/node/bin/node" "/app/.heroku/node/bin/npm" "start"
2016-01-05T17:27:20.424111+00:00 app[web.1]: npm ERR! npm v3.3.12
2016-01-05T17:27:20.425937+00:00 app[web.1]: npm ERR! missing script: start
2016-01-05T17:27:20.422441+00:00 app[web.1]: npm ERR! Linux 3.13.0-71-generic
2016-01-05T17:27:20.426242+00:00 app[web.1]: npm ERR!
2016-01-05T17:27:20.426432+00:00 app[web.1]: npm ERR! If you need help, you may report this error at:
2016-01-05T17:27:20.426634+00:00 app[web.1]: npm ERR! <https://github.com/npm/npm/issues>
您必须通知 heroku 从哪里开始:missing script: start
。在你的 package.json 中,你应该有类似 this 的内容:
"scripts": {
"start": "node index.js"
}
其中 index.js
是您的入口点。
作为 alternative,您可以在 Procfile
中指定:
web: node index.js
在我的例子中,changing这个:
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
对此:
"scripts": {
"start": "node app.js"
},
是解决方案
我的节点 js 应用程序在发布到 heroku.com
时也遇到了类似的错误
首先创建一个procfile,procfile是一个没有任何扩展名的简单文本文件。
现在只在 procfile 中放置一行。
web: npm start
现在使用命令
创建 package.json 文件
npm init
创建 package.json 文件后,请将开头 属性 放在脚本中。
"scripts": {
"start": "node app.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
现在提交所有 (procfile/package.json) 个挂起的文件。并再次从 heroku 部署应用程序。
我的愚蠢错误是我将主分支推送到 Heroku 而我的更改在另一个分支中!
确保先将最新分支与 master 分支合并
> git checkout master
> git merge your-latest-branch
> git push heroku master
出于某种原因将启动脚本推到顶部解决了问题
所以不用
"scripts": {
"test": "jest",
"start": "node app.js"
}
我做到了
"scripts": {
"start": "node app.js",
"test": "jest"
}
经过多次故障排除后,我在尝试使用 heroku 部署我的服务器时遇到了同样的问题。我对 package.json 所做的更改包括在您的脚本中创建一个开始 属性;
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node app.js"
},
进行更改后,确保没有扩展名的 Procfile 有这一行;
web: node app.js (Depends on your server file).
然后您可以继续提交您的文件。
希望这对您有所帮助
我使用的是 nodemon.js,所以我将其包含在 package.json 中,如下所示:
“脚本”
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev": "nodemon index.js",
},
但是我遇到了这个 Heroku 错误:
2022-01-06T11:51:55.044364+00:00 heroku[web.1]: Starting process with
command npm start
2022-01-06T11:51:57.390306+00:00 app[web.1]: npm
ERR! missing script: start 2022-01-06T11:51:57.398106+00:00
app[web.1]: 2022-01-06T11:51:57.398334+00:00 app[web.1]: npm ERR! A
complete log of this run can be found in:
2022-01-06T11:51:57.398402+00:00 app[web.1]: npm ERR!
/app/.npm/_logs/2022-01-06T11_51_57_391Z-debug.log
2022-01-06T11:51:57.598054+00:00 heroku[web.1]: Process exited with
status 1 2022-01-06T11:51:57.882212+00:00 heroku[web.1]: State changed
from starting to crashed 2022-01-06T11:51:57.953568+00:00
heroku[web.1]: State changed from crashed to starting
2022-01-06T11:52:00.240909+00:00 heroku[web.1]: Starting process with
command npm start
2022-01-06T11:52:02.010859+00:00 app[web.1]: npm
ERR! missing script: start 2022-01-06T11:52:02.014370+00:00
app[web.1]: 2022-01-06T11:52:02.014567+00:00 app[web.1]: npm ERR! A
complete log of this run can be found in:
.................................etc
我发现 Heroku 使用“npm start”来 运行 我们的应用程序,同时我没有将它包含在 package.json 中;所以包括如下:
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev": "nodemon index.js",
"start": "node index.js"
},
然后重新启动 git 个进程:
-heroku restart
-heroku git:remote -a app_name
-git add .
-git commit -am "Your commit"
-git push heroku master
一切都很好。
我在使用 git hub 将我的应用程序部署到 heroku 时遇到了某种错误。问题是,我不明白 heroku 日志和随之而来的错误。这是 heroku 日志:
Marcuss-MacBook-Pro:Weather-App marcushurney$ heroku logs
2016-01-05T14:37:27.798077+00:00 app[web.1]: npm ERR! Please include the following file with any support request:
2016-01-05T14:37:27.798377+00:00 app[web.1]: npm ERR! /app/npm-debug.log
2016-01-05T14:37:27.786949+00:00 app[web.1]: npm ERR! node v5.1.1
2016-01-05T14:37:27.786556+00:00 app[web.1]: npm ERR! argv "/app/.heroku/node/bin/node" "/app/.heroku/node/bin/npm" "start"
2016-01-05T14:37:27.787856+00:00 app[web.1]: npm ERR! npm v3.3.12
2016-01-05T14:37:28.776245+00:00 heroku[web.1]: Process exited with status 1
2016-01-05T14:37:28.789412+00:00 heroku[web.1]: State changed from starting to crashed
2016-01-05T17:27:16.684869+00:00 heroku[web.1]: State changed from crashed to starting
2016-01-05T17:27:17.853743+00:00 heroku[web.1]: Starting process with command `npm start`
2016-01-05T17:27:20.423495+00:00 app[web.1]: npm ERR! node v5.1.1
2016-01-05T17:27:20.423130+00:00 app[web.1]: npm ERR! argv "/app/.heroku/node/bin/node" "/app/.heroku/node/bin/npm" "start"
2016-01-05T17:27:20.424111+00:00 app[web.1]: npm ERR! npm v3.3.12
2016-01-05T17:27:20.425937+00:00 app[web.1]: npm ERR! missing script: start
2016-01-05T17:27:20.422441+00:00 app[web.1]: npm ERR! Linux 3.13.0-71-generic
2016-01-05T17:27:20.426242+00:00 app[web.1]: npm ERR!
2016-01-05T17:27:20.426432+00:00 app[web.1]: npm ERR! If you need help, you may report this error at:
2016-01-05T17:27:20.426634+00:00 app[web.1]: npm ERR! <https://github.com/npm/npm/issues>
您必须通知 heroku 从哪里开始:missing script: start
。在你的 package.json 中,你应该有类似 this 的内容:
"scripts": {
"start": "node index.js"
}
其中 index.js
是您的入口点。
作为 alternative,您可以在 Procfile
中指定:
web: node index.js
在我的例子中,changing这个:
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
对此:
"scripts": {
"start": "node app.js"
},
是解决方案
我的节点 js 应用程序在发布到 heroku.com
时也遇到了类似的错误首先创建一个procfile,procfile是一个没有任何扩展名的简单文本文件。
现在只在 procfile 中放置一行。
web: npm start
现在使用命令
创建 package.json 文件npm init
创建 package.json 文件后,请将开头 属性 放在脚本中。
"scripts": {
"start": "node app.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
现在提交所有 (procfile/package.json) 个挂起的文件。并再次从 heroku 部署应用程序。
我的愚蠢错误是我将主分支推送到 Heroku 而我的更改在另一个分支中!
确保先将最新分支与 master 分支合并
> git checkout master
> git merge your-latest-branch
> git push heroku master
出于某种原因将启动脚本推到顶部解决了问题
所以不用
"scripts": {
"test": "jest",
"start": "node app.js"
}
我做到了
"scripts": {
"start": "node app.js",
"test": "jest"
}
经过多次故障排除后,我在尝试使用 heroku 部署我的服务器时遇到了同样的问题。我对 package.json 所做的更改包括在您的脚本中创建一个开始 属性;
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node app.js"
},
进行更改后,确保没有扩展名的 Procfile 有这一行;
web: node app.js (Depends on your server file).
然后您可以继续提交您的文件。
希望这对您有所帮助
我使用的是 nodemon.js,所以我将其包含在 package.json 中,如下所示: “脚本”
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev": "nodemon index.js",
},
但是我遇到了这个 Heroku 错误:
2022-01-06T11:51:55.044364+00:00 heroku[web.1]: Starting process with command
npm start
2022-01-06T11:51:57.390306+00:00 app[web.1]: npm ERR! missing script: start 2022-01-06T11:51:57.398106+00:00 app[web.1]: 2022-01-06T11:51:57.398334+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 2022-01-06T11:51:57.398402+00:00 app[web.1]: npm ERR!
/app/.npm/_logs/2022-01-06T11_51_57_391Z-debug.log 2022-01-06T11:51:57.598054+00:00 heroku[web.1]: Process exited with status 1 2022-01-06T11:51:57.882212+00:00 heroku[web.1]: State changed from starting to crashed 2022-01-06T11:51:57.953568+00:00 heroku[web.1]: State changed from crashed to starting 2022-01-06T11:52:00.240909+00:00 heroku[web.1]: Starting process with commandnpm start
2022-01-06T11:52:02.010859+00:00 app[web.1]: npm ERR! missing script: start 2022-01-06T11:52:02.014370+00:00 app[web.1]: 2022-01-06T11:52:02.014567+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: .................................etc
我发现 Heroku 使用“npm start”来 运行 我们的应用程序,同时我没有将它包含在 package.json 中;所以包括如下:
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev": "nodemon index.js",
"start": "node index.js"
},
然后重新启动 git 个进程:
-heroku restart
-heroku git:remote -a app_name
-git add .
-git commit -am "Your commit"
-git push heroku master
一切都很好。