[Flutter] Gradle 버전 오류

코린이·2024년 11월 16일

요즘 졸업작품으로 대학생들과 함께 배달음식을 시켜먹는 앱을 플러터를 통해 만들고 있다.
원래 올해 초부터 개발을 진행하고 있었지만 이러저러한 사정으로 인해 7개월정도 개발이 중단되었다.
그래서 오랜만에 플러터를 설치하고 실행하니 다음과 같은 오류가 발생하였다.

Your project's Gradle version is incompatible with the Java version that Flutter is using for Gradle.

문제가 발생한 이유

해당 오류를 구글링 해보았고 Gradle과 Java 버전이 서로 호환되지 않아 발생하지 않은 오류라는 것을 알 수 있있다.

Java JDK 별 Gradle 지원 버전은 아래와 같다.

해당 문제를 해결하기 위해 android/gradle/wrapper 안에 있는 gradle-wrapper.properties 파일을 통해 gradle 버전을 확인하였다.

distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.3-all.zip을 통해 현재 gradle 버전이 7.6.3이라는 걸 알 수 있었다.

해결방법 고민

현재 나는 JAVA 17버전을 사용하고 있기 때문에 정상적으로 동작해야한다. 하지만 현재 오류가 발생하고 있다. 대부분의 블로그에서 gradle 버전 때문에 발생한다고 설명하고 있지만 나는 조금 다르게 생각했다.

현재 플러터에서 자바 17버전을 사용하고 있지 않는 것은 아닐까?

그래서 다음 명령어를 통해 해당 플러터 프로젝트 정보를 확인해보았다.

flutter analyze --suggestions

예상대로 현재 자바 버전이 17이 아닌 21로 잡혀있었다.

JAVA_HOME 제대로 설정 되어있고 자바 버전도 제대로 17로 잡히는데 왜 이런 오류가 발생하는지 정확히는 모르겠다.
안드로이드 스튜디오를 깔면 자동으로 자바가 설치되는데 그것 때문일지도 모르겠다(그저 단순한 추측이다).

해결방법

이런 상황에서 문제를 해결할 수 있는 방법은 다음 명령을 통해 플러터에서 사용할 자바 버전을 직접 명시해주는 것이다.

flutter config --jdk-dir /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home/

나의 경우 자바 17버전의 위치가 /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home/이기 때문에 위와 같이 작성해지만 이와 다를 경우 자신에게 맞는 경로를 찾아 넣어주면 된다.


이후 flutter analyze --suggestions를 명령을 통해 프로젝트 정보를 확인하였더니 Gradle과 Java의 버전이 서로 호환되었고 문제가 해결되었다.

마무리

앞으로 이런 상황이 발생하지 않도록 Gradle과 Java를 잘 확인해야겠다.
모두들 Happy Coding!😁

참고자료

https://ffuny.tistory.com/146
https://adjh54.tistory.com/214
https://stackoverflow.com/questions/76123807/my-projects-gradle-version-is-incompatible-with-the-java-version-that-flutter-i

profile
호기심이 많고, 문제를 끝까지 해결하려는 집념이 강한 개발자입니다.

0개의 댓글