들어가기 전
kakao login api 문제로 키해시를 뽑다가 환경변수를 전부 날리는 실수를 저질렀다.
안드로이드 java home이나 gradle을 담은 환경변수가 날라갔고 그 이후로 안드로이드 스튜디오에 자동완성 및 에러가 안뜨는 문제가 발생하였다. 이를 해결하기 위한 과정과 방법에 대한 내용을 포스팅하고자 한다.
Error 내용
Multiple Gradle daemons might be spawned because the Gradle JDK and JAVA_HOME locations are different. 라고 Notification에 떴다.
만약 해당 에러 없이 안드로이드 스튜디오 자동완성과 에러가 안뜬다면
Power Save Mode가 켜져있는지 확인해야한다.
power save mode가 체크 표시되어있다면 다시 눌러 이를 해제시키면 잘 뜰것이다.
해당 포스팅은 이 문제와는 다른 원인이다.
JDK 환경변수 다시 적용하기
https://www.oracle.com/java/technologies/downloads/#java20
현재 프로그램 파일 폴더/JAVA 폴더에 있는 jdk는 jdk20이였고, 안드로이드 스튜디오 해당 프로젝트의 jdk는 17이였다.
jdk 17경로는 다운로드 폴더로 설정해두었고 환경변수가 날라가기 전까지는 문제가 없었다.
이 부분에서 충돌이 나는것 같아. 프로그램 삭제에서 jdk 20.exe 파일을 삭제하고, 위 링크에서 jdk17 exe를 설치했다.
경로는 프로그램 파일/JAVA 로 설정했다.
이렇게 설치 한 jdk 설치 경로를 복사한다. 위 사진의 경로 부분을 누르고 복사하면 된다.
그리고 window 검색창에 환경 변수 편집을 검색한다. 시스템 환경 변수 편집을 누르면된다.
환경변수를 클릭한 뒤 사용자 변수에서 새로만들기를 클릭한다.
변수 이름은 JAVA_HOME으로 설정하고 위에서 복사한 경로를 변수값에 넣는다.
이 후 시스템 변수 아래에 Path를 더블 클릭 한 뒤 새로만들기를 클릭한다.
새로만들기를 클릭해 %JAVA_HOME%\bin 을 넣고 확인을 누른다.
안드로이드 스튜디오로 돌아와서 Invalidate Caches를 클릭해 안드로이드 스튜디오를 다시 실행한다.
이렇게 안드로이드 스튜디오를 다시 실행하면 Notification에는 Multiple Gradle daemons might be spawned because the Gradle JDK and JAVA_HOME locations are different. 에러가 없어졌지만. 여전히 에러와 자동완성이 잘 안되었다.
이 때 File - Manage IDE Settings - Restore Default Settings 를 눌러 IDE를 기본 속성을 복원하는 작업을 거치니 자동완성과 에러가 해결되었다.
이 문제를 해결하면서 환경변수에 JDK경로가 여러개 들어가서 충돌도 생겼었다. 따라서 환경변수에 JAVA_HOME 경로는 한개만 존재해야함을 알게되었다.
정상적으로 JAVA_HOME경로가 설정되었다면 cmd에 java -version 명령어를 실행시 아래와 같이 잘 뜰것이다.
만약 java 내부 또는 외부 명령 실행할 수 있는 프로그램 또는 배치 파일이 아닙니다 라는 문구가 뜬다면 환경변수가 잘못 설정된 것이니 이를 잘 확인하길 바란다.
'Android > 트러블슈팅' 카테고리의 다른 글
[Android/트러블슈팅] 앱을 삭제했는데 데이터가 남아있다고요? (2) | 2023.09.11 |
---|---|
[Android/트러블슈팅] Keystore 정보 확인하는 법 (0) | 2023.09.07 |
[Android/트러블슈팅] Kakao Login API Apk 추출 시 로그인 안되는 문제/KeyHash 오류 (0) | 2023.09.03 |
[Android 오류] Button Style 적용 안됨/색상변경 안됨 (0) | 2022.10.25 |
[Android 오류] JAVA.LANG.CLASSCASTEXCEPTION 에러 발생 (0) | 2022.10.12 |