プログラミング逆引き辞典

~ 多言語対応のプログラミングレシピ ~

Heroku デプロイエラーの対処法

■環境

OS:Windows

フレームワーク:SpringBoot

言語:Java11

ビルドツール:Gradle

IDE:Eclipse

 
 

■エラーその①

コミット時に「fatal: unable to auto-detect email address」

 

$ heroku login
$ cd プロジェクト名
$ git init
$ heroku git:remote -a プロジェクト名
$ git add .
$ git commit -am "make it better" #ココでエラー発生

 
 

原因

メールアドレスを自動検知できていない
 
 

対処法

gitに登録しているアドレスとユーザーネームを指定する

$git config --global user.email メールアドレス
$git config --global user.name ユーザー名

 
 


■エラーその②

プッシュ時に「Could not target platform: ‘Java SE 11’ using tool chain: ‘JDK 8 (1.8)’」

 

$ heroku login
$ cd プロジェクト名
$ git init
$ heroku git:remote -a プロジェクト名
$ git add .
$ git commit -am "make it better"
$ git push heroku master #ココでエラー発生

 
 

原因

Herokuが指定しているJDKと作成したJavaプログラムのバリデーションが違う
今回の場合だとHerokuはJava8で作成したプログラムがJava11だからエラーになっている
 
 

対処法

HerokuのJDKバージョンを作成したプログラムに合わせる為に「system.properties」ファイルを作成して下記を記述し、プロジェクト直下に格納する
 

java.runtime.version=11

 
その後、「.git」フォルダを削除して再度「git init」コマンドからプッシュまでを実行する