Rejecting re-init on previously-failed class java.lang.Class<androidx.core.view.ViewCompat$2>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/view/View$OnUnhandledKeyEventListener;
갑자기 이런 오류가 떴는데 로그를 보니까
setContentView(R.layout.activity_main)
여기가 문제란다,, 아니 지난주까지 잘됐잖아,,,, 왜이래,,,,,
이제 com.android.support 의 지원이 없어지고 androidx로 간다고 하는데 이거 때문에 그런건가?
아무튼 AppCompat 에서 나는 문제는 맞다
그래서 이 부분을 수정해줘야하는데 확인한 방법은 두 가지다
1. Dependency
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == "androidx.appcompat") {
if (!requested.name.startsWith("multidex")) {
details.useVersion "1.+"
}
}
}
}
build.gradle (Module: ) 제일 하단에 이 디펜던시를 추가해주거나
2. androidx.appcompat의 version upgrade
implementation 'androidx.appcompat:appcompat:1.3.0-alpha02'
appcompat를 업그레이드 해주면 된다
버전 체크: developer.android.com/jetpack/androidx/releases/appcompat
// Java language implementation
implementation "androidx.core:core:$core_version"
// Kotlin
implementation "androidx.core:core-ktx:$core_version"
Java language core 업그레이드로도 된다는 거 같다
버전 체크: developer.android.com/jetpack/androidx/releases/core
그래도 해결이 안되면
Invalidate Caches / Restart 를 해보자,,
원래 먼가 업데이트 하고 나면 클린하게 해야한다고 한다
Reference:
'Web | App > Android' 카테고리의 다른 글
[Kotlin] 프로젝트에 모듈 추가하기 (0) | 2021.05.15 |
---|---|
[Kotlin] 코루틴 coroutine (0) | 2021.01.06 |
[Kotlin] Retrofit2 + OkHttp로 API request 시작기 (0) | 2020.12.06 |
[Kotlin] findViewById 대신 id 값이었지만 이제는 view binding (0) | 2020.12.05 |
[Kotlin] data class 여러 개 코드 컨벤션 (0) | 2020.12.05 |