아래는 코모스튜디오가 직접 만든 무료 앱이에요(한 번만 봐주세요 ^^)
Room 에서 DB 가 만들어지고, 초기화를 할 때
OnCreate() 에서 아래와 같이 워커를 불러서 작업을 하는데,
val request = OnTimeWorkRequestBuilder<DatabaseWorker>().build()
WorkManager.getInstance(context).enqueue(request)
enqueue 에 작업을 넣으려고 하면 아래와 같이 요상한 에러가 난다.
아무리 인터넷을 뒤져도 답이 없다.
E/AndroidRuntime: FATAL EXCEPTION: arch_disk_io_0
java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/work/impl/utils/futures/AbstractFuture;
Caused by: java.lang.ClassNotFoundException: androidx.work.impl.utils.futures.AbstractFuture
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.common.util.concurrent.ListenableFuture" on path: DexPathList[[zip file "/
이유는 간단하다,
로그를 잘 보면 listenablefuture 가 없다고 나오는데,
아래와 같이 build.gradle 에서 제외시켰기 때문이다.
이 문제는 단순히 완전히 주석 처리만 하면 끝난다.
온갖 옵션과 빌드 버전, multidex 등을 뒤져봐야 안된다.
다른 이유로 아래와 같이 막았었는데, 워커를 사용하면서 다시 풀어줘야 한다.
언제나 에러를 잘 읽어 보면 답이 나온다....
all*.exclude group: 'com.google.guava', module: 'listenablefuture'
' [안드로이드 공부] > 코틀린' 카테고리의 다른 글
모든 게시물은 코모스튜디오의 소유이며, 무단 복제 수정은 절대 불가입니다. |
퍼가실 경우 댓글과 블로그 주소를 남기고 해당 게시물에 출처를 명확히 밝히세요. |