0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Heroku CLIでSyntaxError ~ Unexpected end of JSON input が発生。

Last updated at Posted at 2022-02-02

はじめに

先日HerokuにLINEボットをデプロイしました。
まだ完成していませんが、初めてボットをデプロイしたのでウキウキです。
Heroku CLIをインストールしたときに発生したわけのわからぬエラーが無ければ。

環境

heroku --version

  • Linux (KDE neon 5.23.5)
  • heroku/7.59.2 linux-x64
    • スタンドアロンインストール
  • node-v12.21.0

課題

謎のSyntax errorが発生しています。
エラーの内容は以下の通り。

heroku config -a {app name}
(node:xxxx) SyntaxError Plugin: heroku: /home/Your name/.local/share/heroku/config.json: Unexpected end of JSON input
module: @oclif/config@1.13.2
task: runHook prerun
plugin: heroku
root: /usr/local/lib/heroku
See more details with DEBUG=*

はい、わけがわかりません。
ただこのエラーの不思議な点は、エラーが出ても普通に使えているというところです。
普通エラーが出たら処理が中断されそうなもんですが、コマンドも普通に実行されるんですよね。

原因

Herokuのconfif.jsonの中身が空であったことが原因でした。
はい。上記エラーで示された場所にHerokuのconfig.jsonがあるのですが、どうもその中身が空(文字通り中身何もなし)の場合、このエラーが出るようです。
jsonファイルなのにjsonらしい記述が何もないとだめなんですかね。
とりあえず、このjsonを正常な形に戻してやれば解決するみたいです。
config.jsonがない場合は、新しく作ってやればいいみたい。

解決策

config.jsonに波括弧{}を加えるだけです。
エラー文にconfig.jsonの場所が示されているので、それを頼りにvi config.jsonします。
あとは波括弧を適当に加えるだけでいいです。例えばこんな感じ。

{

}

これだけで本当に解決しちゃうんですから、楽なもんですね。

おわりに

超絶簡単な解決でした。
いつもこれくらい簡単にエラーが解決してくれたらいいんですけど……。
とりあえずこれで気持ち悪いエラーが消えたので、スッキリした気持ちでLINEボットを作成できます。
やったぜ。

参考

ちなみに今回の解決法以外に、heroku login をインタラクティブでやるっていう解決法が提示されていたのですが、自分はそちらでは解決しませんでした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?