최근 회사에서 디자인이 도착해 레이아웃 편집을 할 일이 많아져 작업을 하는데
이놈의 안드로이드 스튜디오에서 레이아웃 프리뷰가 안되는 버그가 계속 발생했다.
그래서 교수님께 여쭤보았더니
이유는 모르지만 현재 전기 뱀장어(Electric Eel) 버전이 xml 렌더링이 엄청 느려서 못 써먹겠더라.기린(Giraffe) 버전을 사용해봐
라고 답변을 해주셔서 기린 버전을 다운받으러 구글에 검색하니 일단 '안드로이드 스튜디오 다운로드'로 검색하면
뱀장어 버전만 다운로드 받을 수 있어 다시 '안드로이드 스튜디오 giraffe'로 검색해 다운로드하는 링크를 찾았다.
그런데, 이는 stable 버전이 아니고 Canary channel에서만 배포된다고 한다. 뭐 그게 베타 채널같은 느낌일까.
아무튼 따로 집에서도 똑같이 기린 버전을 설치했는데 이제 문제가 시작된다.
예~~전에 진행했던 1인 프로젝트에서 새로운 기능들을 실험해보기 위해 프로젝트를 열었다.
그런데, 빌드가 안된다.
무슨 일인가 내가 뭘 잘못 만졌나...
먼저 어떤 에러가 났었는지 캡처를 해두진 않았지만 내 구글 검색기록에 의존해 써보려한다.
PermittedSubclasses requires ASM9
org.gradle.api.gradleexception: failed to create jar file
multiple gradle daemons might be spawned because the gradle jdk and java_home locations are different.
org.gradle.internal.uncheckedexception.unchecked(uncheckedexception.java:74)
이런 에러 메세지들을 내가 검색했었다.
또 처음보는 메세지들이었고 해결법을 찾지 못했다.
그래서 매우 짜증난 상태로 안드로이드 스튜디오 기린 버전을 닫고 뱀장어 버전으로 프로젝트를 열어봤다.
그런데 아무런 빨간 글자도 없이 프로젝트 빌드가 되는 것이었다.
이건 스튜디오 버전이 뭔가 차이점이 있어서 안된 것이라 생각했다.
저번에 개발자 사이트를 뒤적거리다 힐끗보고 지나친 내용이 머리 속에 지나갔다.
바로, Gradle plugin과 Android 스튜디오의 호환성에 관련된 내용이었다.
일단 나는 프로젝트의 Gradle 버전을 올렸다.
그리고 다시 기린 버전에서 프로젝트를 열어보았다. 역시 정상적으로 빌드가 되었다.
다시 찾아보니 스튜디오 버전에 따라 필요한 플러그인의 버전이 달랐다.
그리고 별 표시로 써있는 문구를 찾았다.
진짜... 내가 정석으로 문제의 원인을 정확히 파악하고 해결한 것은 아니지만 이런 경우도 있구나.. 참 신기했다.
같은 프로젝트의 Gradle 버전에 따라 스튜디오에서 빌드가 되고 안 되고..
아무튼 스튜디오를 업데이트할 때, Gradle 버전도 고려해야 한다는 교훈을 얻었다.
참고 : https://developer.android.com/studio/releases/gradle-plugin?hl=ko
'Android' 카테고리의 다른 글
원하는 화면에서 앱이 백그라운드로 진입 시 종료시키기(feat. Application) (0) | 2023.03.25 |
---|---|
Android Studio Waiting For Debugger 현상 해결 (0) | 2023.03.07 |
기존 프로젝트의 Java to Kotlin 전환 시 주의점 (0) | 2023.02.26 |
Codelab으로 LiveData 알아보기 - 3. Encapsulate the LiveData (0) | 2023.01.26 |
Codelab으로 LiveData 알아보기 - 2. Attach observers to the LiveData objects (0) | 2023.01.18 |