#はじめに
今年の1月末からプログラミングの学習を開始したばかりの初心者です。
今回作成した個人アプリをHerokuでデプロイしてみたのですが、途中で発生したエラー解決について自分用の備忘録として初投稿してみました。
※今回はあくまで発生したエラーの解消法のみをシンプルにまとめています。
Herokuでのデプロイ方法については参考にした記事を最下部に貼っているので気になる方はそちらをご確認ください。
※開発環境
・Ruby 2.5.1
・Rails 5.2.4.2
・heroku/7.39.2 darwin-x64 node-v12.13.0
###エラー内容
Herokuでデプロイ中に以下のようなエラー文言が表示されデプロイに失敗しました。
remote: !
remote: ! Precompiling assets failed.
remote: !
remote: ! Push rejected, failed to compile Ruby app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to (設定したアプリ名).
remote:
To https://git.heroku.com/(設定したアプリ名).git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/(設定したアプリ名).git'
ターミナルを遡って見てみると、エラー原因について以下のような記述が。
remote: rake aborted!
remote: Uglifier::Error: Unexpected character '`'
remote: --
エラー文言からバックフォート(`)がunexpectedだからダメだよ〜となっているんだなという事は何となく理解したものの、じゃあどうしたら良いのかは分からないので調べてみました。
(ちなみに自分はapp/assets/javascriptのファイル内でバックフォートを使った記述をしていました。)
###解決方法
config/environments/production.rb内にある以下の記述をコメントアウトしてあげればOKでした。
# config.assets.js_compressor = :uglifier #この一文をコメントアウト
コメントアウトした後はGithubでコミット&プッシュをしてmasterに反映させます。
GitHub Desktopを使用している場合は、changeに変更内容が上がっていると思うのでコミット&プッシュ。
ターミナル上でコマンドを打つ場合は以下のように行う。
①コミットするchange(ファイル)の選択
$git add -A #コミットするchangeの選択。 -Aは全部ということ
②選択したファイルのコミット&プッシュ
$git commit -m "コミットメッセージ" #""内には変更内容が分かるメッセージを入力
これでmasterに変更が反映されたので、改めてHerokuにデプロイします。
以下のように表示され、無事にデプロイが完了しました!
remote: Verifying deploy... done.
To https://git.heroku.com/(設定したアプリ名).git
* [new branch] master -> master
###最後に
production.rbファイルを変更した後、コミット&プッシュを忘れない!
初めこれをする前に再度デプロイをしてしまって全く同じエラーが出ました。。
##参考記事
Herokuでのデプロイ方法はこちらの記事を参考にさせてもらいました。
【初心者向け】railsアプリをherokuを使って確実にデプロイする方法【決定版】