Flutter를 설치하고 flutter doctor를 실행했을 때 다음과 같은 오류가 발생했습니다.
[!] Android toolchain - develop for Android devices (Android SDK version 35.0.1)
X Cannot execute $JAVA_HOME\bin\java to determine the version
오류가 발생한 화면입은 다음과 같습니다.
이는 Java 환경 변수 설정 문제로 인해 발생할 가능성이 높습니다.
이 오류의 원인과 해결 방법을 알아보겠습니다.
오류 원인
이 오류는 다음과 같은 원인으로 발생할 수 있습니다.
- Java가 설치되지 않았거나 손상됨
- JAVA_HOME 환경 변수가 올바르게 설정되지 않음
- Java 실행 파일(java.exe)이 정상적으로 실행되지 않음
해결 방법1. Java가 설치되어 있는지 확인
Flutter는 Android 개발을 위해 Java를 필요로 합니다.
가장 먼저 Java가 정상적으로 설치되어 있는지 확인하기 위해 'java -version' 명령어를 터미널에서 실행하세요.
java -version
만약 java 명령어가 실행되지 않거나, "command not found" 또는 "is not recognized" 오류가 발생한다면 Java가 설치되지 않았거나 환경 변수가 올바르게 설정되지 않은 것입니다.
Java 설치 방법
- Oracle JDK 다운로드 또는 AdoptOpenJDK에서 Java 11 이상을 다운로드 및 설치하세요.
- 설치가 완료되면 터미널을 다시 실행하고 java -version을 실행하여 정상적으로 설치되었는지 확인하세요.
해결 방법 2. JAVA_HOME 환경 변수 설정
Java가 설치되어 있지만 flutter doctor에서 여전히 오류가 발생한다면, JAVA_HOME 환경 변수가 올바르게 설정되지 않았을 가능성이 큽니다.
Windows에서 JAVA_HOME 설정 방법
- Java가 설치된 위치를 찾습니다.
- 보통 다음 경로에 설치됩니다.(XX.X.X는 Java 버전 번호)
- C:\Program Files\Java\jdk-XX.X.X
- JAVA_HOME 환경 변수를 설정합니다.
- Windows 키 + R → sysdm.cpl 입력 후 Enter → 고급 탭 → 환경 변수 클릭
- 시스템 변수에서 JAVA_HOME이 존재하는지 확인
- 없다면 새로 만들기 버튼을 클릭하고
- 변수 이름: JAVA_HOME
- 변수 값: C:\Program Files\Java\jdk-XX.X.X (본인의 Java 설치 경로 입력)이미 존재하면 올바른 경로로 수정
- Path 환경 변수에 JAVA_HOME\bin 추가
- 환경 변수에서 시스템 변수의 Path를 찾아서 편집
- 새로 만들기를 클릭하고 C:\Program Files\Java\jdk-XX.X.X\bin 추가
- 환경 변수에서 시스템 변수의 Path를 찾아서 편집
- 환경 변수 설정이 적용되었는지 확인
- 명령 프롬프트(CMD) 또는 PowerShell을 열고 echo %JAVA_HOME% 명령어 실행하세요.
- 아래와 같이 정상적으로 Java 설치 경로가 출력되어야 합니다.
해결 방법3. 명령 프롬프트 또는 터미널을 다시 시작하고 Flutter Doctor 실행
환경 변수 설정 후 기존 터미널을 닫고 새 터미널을 열어 다음을 실행하세요.
flutter doctor
정상적으로 Android toolchain이 감지되는지 확인하세요.
추가 해결 방법
만약 위 방법을 시도했음에도 여전히 문제가 해결되지 않는다면 마지막으로 다음 방법도 시도해볼 수 있습니다.
flutter config --jdk-dir <your-JAVA_HOME-path>
<your-JAVA_HOME-path>에는 JDK가 설치된 경로를 입력해주면 됩니다.
만약 JDK 설치 경로를 모르겠다면 'echo %JAVA_HOME%' 명령어 실행해 확인하세요.
참고로 저는 이 방법으로 문제를 해결했습니다!! 😊
마무리
위 방법들을 순서대로 따라 하면 flutter doctor가 정상적으로 실행될 것입니다.
Flutter 개발 환경 세팅 문제를 빠르게 해결하길 바랍니다.