본문 바로가기
Error

could not target platform 'java se 11' using tool chain 'jdk 8 (1.8)'

by 지구 2022. 5. 16.

could not target platform 'java se 11' using tool chain 'jdk 8 (1.8)' gradlew


AWS EC2 에 올린 인스턴스에 ssh 연결하여 테스트 코드를 돌렸는데, 위와 같은 오류를 만났다.

[ec2-user@ip-...]$ ./gradlew test

 

오류 내용은 너무나도 명백해서 상황에 맞게, 편한 방법으로 수정하면 된다.

  1. JDK 11 문법을 사용하지 않은 레포지토리라면 target version 을 1.8 로 변경한다.
  2. JDK 11 문법을 사용하거나 11 버전으로 테스트를 돌리고 싶다면, JDK 11 로 버전을 올려주자.

1번

  • build.gradle 파일에서 아래 부분을 1.8 버전에 맞춰 수정하자.
    • sourceCompatibility = 1.8
    • targetCompatibility = 1.8
  • 다시 테스트를 돌려보자.
    • $ ./gradlew test
  • 성공

 

2번

  • 정말로 jdk 버전이 1.8인지 확인해보자.
    • $ java -version
    • $ javac -version
  • jdk 버전을 1.11 로 올리자.
    • /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
      • 패키지 매니저인 homebrew 를 먼저 설치, (명령어 확인 -> 🔗)
    • $ brew install openjdk@11
  • 다시 테스트를 돌려보자.
    • $ ./gradlew test

 

참고로, 터미널이 아니라 IDE 를 사용하는 경우 설정에서 아래와 같이 변경하자.

 

반응형

댓글