Avatar ·

Dagger错误:在Kotlin中提示“Prefer to run the dagger processor over that class instead”

大家好!我正在将一个项目从Java迁移到Kotlin,在使用Dagger 2时遇到了问题。我有一个简单的模块,提供依赖: ```kotlin @Module class NetworkModule { @Provides @Singleton fun provideRetrofit(): Retrofit { return Retrofit.Builder() .baseUrl("https://api.example.com") .build() } } @Component(modules = [NetworkModule::class]) @Singleton interface AppComponent { fun inject(activity: MainActivity) } ``` 但当我运行构建时,Gradle报错: `error: [Dagger/DependencyCycle] Prefer to run the dagger processor over that class instead` 我搜索了一下,但所有解决方案要么是针对Java的,要么不适用。我使用的是Kotlin 1.8、Dagger 2.48和kapt。我尝试过清理缓存、重新构建,但都没用。错误正好发生在Dagger组件生成阶段。可能是什么问题?是不是因为我使用了`@Singleton`而没有用`@Reusable`?还是别的什么原因?