1. 상황(Situation)
Mac에서 개발 중이던 Spring Boot(Gradle) 프로젝트를 Windows PC로 옮긴 후 Spring Boot 실행 파일을 실행 시 에러가 나면서 실행이 안 되는 상황 발생
Execution failed for task ':compileJava'.
> invalid source release: 11
2. 원인(Cause)
찾아보니 보통 두 경우 중 하나였습니다.
- 자바 경로 설정 문제
- 프로젝트와 IntelliJ에 설정된 자바 버전 차이
필자는 자바 버전 차이였습니다.
프로젝트는 Jdk 11인데 IntelliJ에 설정된 자바 버전은 jdk 1.8.0 였습니다.
3. 해결(Solution)
3.1. Java SDK 추가
File > Project Structure > Platform Settings > SDKs
프로젝트 버전에 맞는 JDK를 다운로드합니다.
- IntelliJ를 이용해 다운로드할 수도 있고(Download JDK...), 직접 다운로드해서 경로를 지정할 수 있습니다.(Select JDK home from disk...)
- 해당 프로젝트에 맞는 자바 버전을 설치 후 추가합니다. 이미 설치되어있는 경우 추가하지 않아도 됩니다.
3.2. Project SDK
File > Project Structure > Project Settings > Project > Project SDK
프로젝트 버전에 맞는 JDK를 설정해줍니다.
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
3.4. module Java Compiler
File > Settings...(Preferences) > Build, Execution, Deployment > Compiler > Java Compiler > Per-module bytecode version
모듈 별로 자바 컴파일러를 설정했을 경우 버전이 맞는지 확인 후 설정합니다.