【发布时间】:2018-02-11 20:38:49
【问题描述】:
正如标题所说,我在将我的流星应用程序部署到 heroku 时遇到了这个错误。我已经用 JSONlint 验证了我的 settings.json 文件,并搜索了任何可能的修复方法,但我没有遇到任何可行的方法。我的错误日志如下所示。谁能告诉我可能出了什么问题?
2017-09-03T11:18:31.226632+00:00 heroku[web.1]: Starting process with command `.meteor/heroku_build/bin/node $NODEJS_PARAMS .meteor/heroku_build/app/main.js`
2017-09-03T11:18:33.344368+00:00 app[web.1]: /app/.meteor/heroku_build/app/programs/server/boot.js:391
2017-09-03T11:18:33.344382+00:00 app[web.1]: }).run();
2017-09-03T11:18:33.344383+00:00 app[web.1]: ^
2017-09-03T11:18:33.344384+00:00 app[web.1]:
2017-09-03T11:18:33.344385+00:00 app[web.1]: Error: METEOR_SETTINGS are not valid JSON: $(cat settings.json)
2017-09-03T11:18:33.344385+00:00 app[web.1]: at packages/meteor.js:59:11
2017-09-03T11:18:33.344386+00:00 app[web.1]: at packages/meteor.js:80:4
2017-09-03T11:18:33.344387+00:00 app[web.1]: at packages/meteor.js:1380:3
2017-09-03T11:18:33.344388+00:00 app[web.1]: at /app/.meteor/heroku_build/app/programs/server/boot.js:338:34
2017-09-03T11:18:33.344388+00:00 app[web.1]: at Array.forEach (native)
2017-09-03T11:18:33.344389+00:00 app[web.1]: at Function._.each._.forEach (/app/.meteor/heroku_build/app/programs/server/node_modules/underscore/underscore.js:79:11)
2017-09-03T11:18:33.344390+00:00 app[web.1]: at /app/.meteor/heroku_build/app/programs/server/boot.js:158:5
2017-09-03T11:18:33.344391+00:00 app[web.1]: at /app/.meteor/heroku_build/app/programs/server/boot.js:387:5
2017-09-03T11:18:33.344392+00:00 app[web.1]: at Function.run (/app/.meteor/heroku_build/app/programs/server/profile.js:510:12)
2017-09-03T11:18:33.344392+00:00 app[web.1]: at /app/.meteor/heroku_build/app/programs/server/boot.js:386:11
2017-09-03T11:18:33.415049+00:00 heroku[web.1]: State changed from starting to crashed
2017-09-03T11:18:33.400865+00:00 heroku[web.1]: Process exited with status 1
【问题讨论】:
-
你能不能也显示你的
Procfile? -
@Styx 抱歉,我对 heroku 很陌生,我不确定这是什么。我正在为 heroku 使用流星构建包,在我部署站点的步骤中没有提到这一点。
-
好的,第一个问题:你做了
heroku config:add METEOR_SETTINGS="$(cat settings.json)"吗?如果是,你是在 Win 还是 Mac/Lin 上做的? -
@Styx 是的,我是在 win 上以及通过 heroku 网络应用程序 UI 完成的
-
在 Heroku Web 管理仪表板中,您的
METEOR_SETTINGS环境变量应该是您的settings.json文件的内容,而不是$(cat settings.json)