【发布时间】:2022-01-07 14:38:32
【问题描述】:
我看到了这个问题,但我不知道是什么原因造成的,也不知道如何解决 只是应用程序无缘无故地崩溃了,没有什么奇怪的!
这是来自 logcat 的问题:
2021-12-01 00:08:56.105 27747-27747/com.example.halanchallenge E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.halanchallenge, PID: 27747
java.lang.RuntimeException: Unable to instantiate application com.example.halanchallenge.presentation.utils.manager.BaseApplication: java.lang.ClassNotFoundException: Didn't find class "com.example.halanchallenge.presentation.utils.manager.BaseApplication" on path: DexPathList[[zip file "/data/app/~~AByZTfuIHlZhPYmwpjE5lQ==/com.example.halanchallenge-B7fNXgixWuCCl0Iug8pygQ==/base.apk"],nativeLibraryDirectories=[/data/app/~~AByZTfuIHlZhPYmwpjE5lQ==/com.example.halanchallenge-B7fNXgixWuCCl0Iug8pygQ==/lib/arm64, /system/lib64, /system/system_ext/lib64]]
at android.app.LoadedApk.makeApplication(LoadedApk.java:1332)
at android.app.ActivityThread.handleMakeApplication(ActivityThread.java:7469)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7440)
at android.app.ActivityThread.access$1400(ActivityThread.java:301)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2148)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:246)
at android.app.ActivityThread.main(ActivityThread.java:8506)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.example.halanchallenge.presentation.utils.manager.BaseApplication" on path: DexPathList[[zip file "/data/app/~~AByZTfuIHlZhPYmwpjE5lQ==/com.example.halanchallenge-B7fNXgixWuCCl0Iug8pygQ==/base.apk"],nativeLibraryDirectories=[/data/app/~~AByZTfuIHlZhPYmwpjE5lQ==/com.example.halanchallenge-B7fNXgixWuCCl0Iug8pygQ==/lib/arm64, /system/lib64, /system/system_ext/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at android.app.AppComponentFactory.instantiateApplication(AppComponentFactory.java:76)
at androidx.core.app.CoreComponentFactory.instantiateApplication(CoreComponentFactory.java:52)
at android.app.Instrumentation.newApplication(Instrumentation.java:1158)
at android.app.LoadedApk.makeApplication(LoadedApk.java:1324)
at android.app.ActivityThread.handleMakeApplication(ActivityThread.java:7469)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7440)
at android.app.ActivityThread.access$1400(ActivityThread.java:301)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2148)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:246)
at android.app.ActivityThread.main(ActivityThread.java:8506)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)
Suppressed: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/example/halanchallenge/presentation/utils/manager/Hilt_BaseApplication;
at java.lang.VMClassLoader.findLoadedClass(Native Method)
at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:738)
at java.lang.ClassLoader.loadClass(ClassLoader.java:363)
... 15 more
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.example.halanchallenge.presentation.utils.manager.Hilt_BaseApplication" on path: DexPathList[[zip file "/data/app/~~AByZTfuIHlZhPYmwpjE5lQ==/com.example.halanchallenge-B7fNXgixWuCCl0Iug8pygQ==/base.apk"],nativeLibraryDirectories=[/data/app/~~AByZTfuIHlZhPYmwpjE5lQ==/com.example.halanchallenge-B7fNXgixWuCCl0Iug8pygQ==/lib/arm64, /system/lib64, /system/system_ext/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
... 18 more
这是我的 gradle 文件:
plugins {
id 'com.android.application'
id 'kotlin-android'
id 'kotlin-kapt'
id 'androidx.navigation.safeargs.kotlin'
id 'dagger.hilt.android.plugin'
id 'kotlin-parcelize'
}
android {
compileSdkVersion 31
defaultConfig {
applicationId "com.example.halanchallenge"
minSdkVersion 21
targetSdkVersion 31
versionCode 1
versionName "1.0"
multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
buildConfigField("String", "BASE_URL", BASE_URL)
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
dataBinding {
enabled = true
}
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation 'androidx.core:core-ktx:1.7.0'
implementation 'androidx.appcompat:appcompat:1.4.0'
implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.2'
testImplementation 'junit:junit:'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
implementation 'com.android.support:multidex:1.0.3'
//Dagger - Hilt
implementation "com.google.dagger:hilt-android:2.38.1"
annotationProcessor "com.google.dagger:hilt-android-compiler:2.38.1"
annotationProcessor 'androidx.hilt:hilt-compiler:1.0.0'
implementation 'androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03'
//GIF
implementation "com.airbnb.android:lottie:3.7.0"
// Glide
implementation 'com.github.bumptech.glide:glide:4.12.0'
kapt 'com.github.bumptech.glide:compiler:4.12.0'
// Retrofit
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation "com.squareup.okhttp3:logging-interceptor:5.0.0-alpha.2"
// Coroutines
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.1'
// Coroutine Lifecycle Scopes
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.0"
implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.4.0"
//GSON
implementation 'com.google.code.gson:gson:2.8.7'
// Navigation Components
implementation "androidx.navigation:navigation-fragment-ktx:2.3.5"
implementation "androidx.navigation:navigation-ui-ktx:2.3.5"
implementation 'de.hdodenhof:circleimageview:3.1.0'
implementation 'com.github.martinstamenkovski:ARIndicatorView:2.0.0'
implementation 'com.amitshekhar.android:android-networking:1.0.2'
}
分级:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext.kotlin_version = "1.5.31"
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.3'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.3.5"
classpath 'com.google.dagger:hilt-android-gradle-plugin:2.38.1'
}
}
allprojects {
repositories {
google()
maven { url 'https://jitpack.io' }
mavenCentral()
jcenter() // Warning: this repository is going to shut down soon
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
这是基础应用程序
@HiltAndroidApp
class BaseApplication : Application()
问题是什么以及如何解决? 想了好久也没找到解决办法! 我希望你能帮我解决它。
谢谢你:))
【问题讨论】:
标签: kotlin gradle classnotfoundexception