flutter doctor 이슈 대응 목록

Johnny·2023년 1월 17일
3

(Android Studio) Unable to find bundled Java version.

문제

안드로이드 스튜디오의 메이저 버전이 업데이트되고 난 후에 Flutter doctor를 수행하면 Java JDK 경로를 인식하지 못하는 오류가 발생하곤 합니다.

원인

이는 Flutter 프레임워크 내부에 JDK 경로를 찾는 코드가 존재하는데, 안드로이드 스튜디오 앱이 업데이트 되며 내부적으로 JDK 경로가 변경되어 발생하는 문제일 가능성이 높습니다.

Flutter 프레임워크의 android_studio.dart 파일의 내부를 살펴보면 안드로이드 스튜디오 버전별로 jdk를 찾는 코드가 분기처리 되어있는 것을 알 수 있습니다. (왜 이렇게 해놨을까..?)

해결방법

이에 대한 해결방법은 Flutter 프레임워크에서 공식적으로 최신 버전의 안드로이드 스튜디오에 대한 대응 코드가 추가되길 기다리거나, 임의로 상기의 코드에서 처리될 수 있도록 물리적으로 JDK 경로를 변경해주는 방법이 있습니다.

Flutter에서 대응해주길 기다리기엔 몇달이 걸리 수도 있으니... 임의로 JDK 경로를 인식할 수 있도록 대응하는 방법을 알아보겠습니다.

먼저 안드로이드 스튜디오가 설치된 경로로 접근합니다.

  • 안드로이드 스튜디오가 설치된 경로는 "flutter doctor -v"를 통해 도출되는 보고서에서 찾을 수 있습니다.

Contents 디렉토리로 이동하여 jre 폴더를 생성해주세요.

jbr 디렉토리로 이동하여 Contents 폴더를 통째로 복사하여 위에서 생성한 jre 폴더에 붙여넣기 해주세요.

이후 "flutter doctor -v" 명령을 다시 실행하면 문제가 해결되는 것을 확인할 수 있습니다.

profile
배우면 까먹는 개발자 😵‍💫

2개의 댓글

comment-user-thumbnail
2023년 1월 31일

덕분에 해결했습니다 감사합니다

답글 달기
comment-user-thumbnail
2024년 1월 25일

저도 덕분에 해결했어요 고맙습니다!

답글 달기