본문으로 바로가기

[IntelliJ] Execution failed for task ':compileJava'.

category Error 2021. 11. 9. 11:09

1. 상황(Situation)

Mac에서 개발 중이던 Spring Boot(Gradle) 프로젝트를 Windows PC로 옮긴 후 Spring Boot 실행 파일을 실행 시 에러가 나면서 실행이 안 되는 상황 발생

Execution failed for task ':compileJava'.
> invalid source release: 11

Execution failed for task ':compileJava'.

2. 원인(Cause)

찾아보니 보통 두 경우 중 하나였습니다.

  1. 자바 경로 설정 문제
  2. 프로젝트와 IntelliJ에 설정된 자바 버전 차이

필자는 자바 버전 차이였습니다. 

프로젝트는 Jdk 11인데 IntelliJ에 설정된 자바 버전은 jdk 1.8.0 였습니다.

 

build.gradle
IntelliJ SDK setting

3. 해결(Solution)

3.1. Java SDK 추가

File > Project Structure > Platform Settings > SDKs

 

프로젝트 버전에 맞는 JDK를 다운로드합니다.

  • IntelliJ를 이용해 다운로드할 수도 있고(Download JDK...), 직접 다운로드해서 경로를 지정할 수 있습니다.(Select JDK home from disk...)
  • 해당 프로젝트에 맞는 자바 버전을 설치 후 추가합니다. 이미 설치되어있는 경우 추가하지 않아도 됩니다.

Java SDK 추가 1
Java SDK 추가 2
Java SDK 추가 3

3.2. Project SDK

File > Project Structure > Project Settings > Project > Project SDK

 

프로젝트 버전에 맞는 JDK를 설정해줍니다.

Project SDK

3.3. Gradle JVM

File > Settings...(Preferences) > Build, Execution, Deployment > Build Tools > Gradle > Gradle JVM

 

Gradle 버전에 맞는 JVM을 설정해줍니다.

  • 추가적으로 빠른 실행 속도를 위해 자바로 직접 실행하도록 설정을 변경하면 좋습니다.
    • Build and run using: Gradle -> Intellij IDEA
    • Run tests using: Gradle -> Intellij IDEA

Gradle JVM

3.4. module Java Compiler

File > Settings...(Preferences) > Build, Execution, Deployment > Compiler > Java Compiler > Per-module bytecode version

 

모듈 별로 자바 컴파일러를 설정했을 경우 버전이 맞는지 확인 후 설정합니다.

module Java Compiler