おおくまねこ

職業プログラマーです。興味のある話題を書いています。

Intellij で gradle build が Java のバージョン不一致でコンパイルエラーする

概要

Intellij を使っている場合、IDEの build ジョブ実行時に以下のエラーで失敗する場合。

Could not target platform: 'Java SE  XX' using tool chain: 'JDK YY (YY)'.

※XX, YY は一致しない任意のバージョン

原因

どういう時に起こるかというと、

build.gradle の設定でコンパイルするバージョンを変更した時に発生します。

 

+ sourceCompatibility = '14'
- sourceCompatibility = '1.8'

 

原因としては IDE の設定が合ってない事です。

gradle に関する設定を変更すれば解消します。 

 

対処方法

Gradle 設定のJDK バージョンを変更します。

 

設定の場所は以下。

[File] -> [Settings] ->

[Build, Execution, Deployment] -> [Build Tools] -> [Gradle] 

f:id:keyno63:20200822153402p:plain

「Gradle JVM」の設定を変更します。

今回の例だと、Java 14 でbuild したかったので、「14」のものを選択します。

 

以上です。