티스토리 뷰

요새 안드로이드를 위주로 공부를 진행하고 있는데, room이 계속 오류가 나는 바람에 며칠 동안 끙끙 앓다가 이건 도대체 뭐하는건지 모르겠다 생각하면서 방치한지 1주일 째... 다시 안드로이드 해야지 하고 공부하고 있는데, 또 에러가 나서 진짜 화가 머리 끝까지 났었습니다. 왜 나는 안 되는데? 근데 이때까지만 해도 딱히 room과 m1 사이에 호환 문제가 있는지 생각은 안하고 있었습니다. (웬만한건 다 되어서...) 근데 결국 호환 문제였네요.

    def room_version = "2.2.6"
    implementation "androidx.room:room-runtime:$room_version"
    kapt "androidx.room:room-compiler:$room_version"

진짜 gradle에 이렇게 밖에 입력 안했고 gradle build는 됩니다. 근데 app build를 할 때 launch가 안 되는거에요. 다음과 같은 오류와 함께요..

Execution failed for task ':app:kaptDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask$KaptExecutionWorkAction
   > java.lang.reflect.InvocationTargetException (no error message)

미치고 팔짝 뛰는거죠.. 구글에 검색했는데, 안뜨고.. 해결법은 모르겠고.. m1..!! ㅜㅜ 나름 최신 놋북으로 맞추겠다고 올해 초에 지른건데
이렇게 사람 화나게 하니까. 후회할 수도 없고 그렇다고 기존에 있던 window 놋북쓰기에는 맥북에 너무 익숙해졌고... 그래서 이제 너 죽고 나 죽자는 생각으로 관련된 모든 블로그에 다 돌아댕기면서 해결법을 찾았습니다.

https://superwony.tistory.com/164 에서 찾았고 아래의 코드를 추가해주면 된다고 합니다.

kapt 'org.xerial:sqlite-jdbc:3.34.0'// m1 맥북 에러 대응

후... m1 쓰시는 분들 room 쓰실 때 위 코드 잊지말고 해줍시다. 그냥 dependency에서 room 불러오는 줄 바로 밑에다가 써주시면 해결 가능합니다.
화이팅!