任何人都可以帮助我知道出了什么问题吗
<?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
app
包 build.gradle
文件中包含下一行:...
android {
...
namespace = "com.example.myapp"
}
...
build.gradle
plugins {
...
id("com.google.dagger.hilt.android") version "2.44" apply false
}
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
}
kapt
作为依赖项,使用 kapt
作为包含,而不是 annotationProcessor
kapt("com.google.dagger:hilt-android-compiler:2.44")
kapt("androidx.hilt:hilt-compiler:1.2.0")