ava.lang.ClassNotFoundException:未找到类“com.example.myapp.MyApp”

问题描述 投票:0回答:1

任何人都可以帮助我知道出了什么问题吗

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    <application
        android:name=".MyApp"
        android:allowBackup="true"
        android:dataExtractionRules="@xml/data_extraction_rules"
        android:fullBackupContent="@xml/backup_rules"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApp"
        tools:targetApi="31">
        <activity
            android:name=".activities.ShoppingActivity"
            android:exported="false" />
        <activity
            android:name=".activities.LoginRegisterActivity"
            android:exported="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
package com.example.myapp

import android.app.Application
import dagger.hilt.android.HiltAndroidApp

@HiltAndroidApp
class MyApp : Application() {

}

错误是这样的:

java.lang.RuntimeException: Unable to instantiate application com.example.myapp.MyApp package com.example.myapp: java.lang.ClassNotFoundException: Didn't find class "com.example.myapp.MyApp" on path: DexPathList[[zip file "/data/app/~~pZwZTuonxc3-s2MzsiIEYg==/com.example.myapp-b7-G1N5IL6IaJdxnNTBq6A==/base.apk"],nativeLibraryDirectories=[/data/app/~~pZwZTuonxc3-s2MzsiIEYg==/com.example.myapp-b7-G1N5IL6IaJdxnNTBq6A==/lib/x86_64, /system/lib64, /system_ext/lib64]]
    at android.app.LoadedApk.makeApplicationInner(LoadedApk.java:1466)
    at android.app.LoadedApk.makeApplicationInner(LoadedApk.java:1395)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6959)
    at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2236)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loopOnce(Looper.java:205)
    at android.os.Looper.loop(Looper.java:294)
    at android.app.ActivityThread.main(ActivityThread.java:8177)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.example.myapp.MyApp" on path: DexPathList[[zip file "/data/app/~~pZwZTuonxc3-s2MzsiIEYg==/com.example.myapp-b7-G1N5IL6IaJdxnNTBq6A==/base.apk"],nativeLibraryDirectories=[/data/app/~~pZwZTuonxc3-s2MzsiIEYg==/com.example.myapp-b7-G1N5IL6IaJdxnNTBq6A==/lib/x86_64, /system/lib64, /system_ext/lib64]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259)
    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:51)
    at android.app.Instrumentation.newApplication(Instrumentation.java:1282)
    at android.app.LoadedApk.makeApplicationInner(LoadedApk.java:1458)
    at android.app.LoadedApk.makeApplicationInner(LoadedApk.java:1395) 
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6959) 
    at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2236) 
    at android.os.Handler.dispatchMessage(Handler.java:106) 
    at android.os.Looper.loopOnce(Looper.java:205) 
    at android.os.Looper.loop(Looper.java:294) 
    at android.app.ActivityThread.main(ActivityThread.java:8177) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:971) 
    Suppressed: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/example/myapp/Hilt_MyApp;
        at java.lang.VMClassLoader.findLoadedClass(Native Method)
        at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:738)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:363)
        ... 16 more
    Caused by: java.lang.ClassNotFoundException: Didn't find class "com.example.myapp.Hilt_MyApp" on path: DexPathList[[zip file "/data/app/~~pZwZTuonxc3-s2MzsiIEYg==/com.example.myapp-b7-G1N5IL6IaJdxnNTBq6A==/base.apk"],nativeLibraryDirectories=[/data/app/~~pZwZTuonxc3-s2MzsiIEYg==/com.example.myapp-b7-G1N5IL6IaJdxnNTBq6A==/lib/x86_64, /system/lib64, /system_ext/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        ... 19 more
android kotlin
1个回答
0
投票
  1. 首先,确保您在
    app
    build.gradle
    文件中包含下一行:
...
android {
    ...
    namespace = "com.example.myapp"
}
...
  1. 验证是否包含所有必要的依赖项:
  • 对于根 gradle 文件
    build.gradle
plugins {
  ...
  id("com.google.dagger.hilt.android") version "2.44" apply false
}
  • 对于应用程序 gradle 文件
    build.gradle
plugins {
  id 'kotlin-kapt'
  id("com.google.dagger.hilt.android")
}

android {
  ...
}

// Hilt requires at least JAVA 8 features.
compileOptions {
    sourceCompatibility = JavaVersion.VERSION_1_8
    targetCompatibility = JavaVersion.VERSION_1_8
}

dependencies {
  implementation("com.google.dagger:hilt-android:2.44")
  kapt("com.google.dagger:hilt-android-compiler:2.44")
}

// Allow references to generated code
kapt {
  correctErrorTypes = true
}
  1. 确保使用
    kapt
    作为依赖项,使用
    kapt
    作为包含,而不是
    annotationProcessor
    kapt("com.google.dagger:hilt-android-compiler:2.44")
    kapt("androidx.hilt:hilt-compiler:1.2.0")
© www.soinside.com 2019 - 2024. All rights reserved.