Dagger 2 组件 class 未生成
Dagger 2 Component class not generated
我目前正在学习 dagger2,但我有问题是 daggercomponent class 没有生成,我不知道原因
implementation 'com.google.dagger:dagger-android:2.27'
implementation 'com.google.dagger:dagger-android-support:2.27'
annotationProcessor 'com.google.dagger:dagger-android-processor:2.27'
public class Nugets {
@Inject
public Nugets() {
}
}
public class Water {
@Inject
public Water() {
}
}
public class Coffee {
Nugets nugets;
Water water;
@Inject
public Coffee(Nugets nugets, Water water) {
this.nugets = nugets;
this.water = water;
}
}
@Component
public interface CoffeeComponent {
Coffee getCoffee();
}
当我试图找到 DaggerCoffeeComponent class 时,我没有找到它。
注意我重建项目
您必须实施 dagger
而不是 dagger-android
。不要忘记制作项目或重建
implementation 'com.google.dagger:dagger:2.27'
annotationProcessor 'com.google.dagger:dagger-compiler:2.27'
你问的问题我遇到过很多次了,幸运的是我知道如何解决它。
这里有一些简单的方法可以解决它。
- 你可以clean/rebuild项目来解决它。
- 您可以invalidate/cache重启您的android工作室来解决。
- 您可以删除安装 android studio.but 的缓存文件夹,您必须确保 android 工作室已关闭。现在你可以重新启动它,你的问题就解决了。
- 您可以重命名 dagger 组件并重建您的项目以生成 class。这解决了您的问题。
这里有一些快速的方法,你可以尝试解决。
我目前正在学习 dagger2,但我有问题是 daggercomponent class 没有生成,我不知道原因
implementation 'com.google.dagger:dagger-android:2.27'
implementation 'com.google.dagger:dagger-android-support:2.27'
annotationProcessor 'com.google.dagger:dagger-android-processor:2.27'
public class Nugets {
@Inject
public Nugets() {
}
}
public class Water {
@Inject
public Water() {
}
}
public class Coffee {
Nugets nugets;
Water water;
@Inject
public Coffee(Nugets nugets, Water water) {
this.nugets = nugets;
this.water = water;
}
}
@Component
public interface CoffeeComponent {
Coffee getCoffee();
}
当我试图找到 DaggerCoffeeComponent class 时,我没有找到它。 注意我重建项目
您必须实施 dagger
而不是 dagger-android
。不要忘记制作项目或重建
implementation 'com.google.dagger:dagger:2.27'
annotationProcessor 'com.google.dagger:dagger-compiler:2.27'
你问的问题我遇到过很多次了,幸运的是我知道如何解决它。 这里有一些简单的方法可以解决它。
- 你可以clean/rebuild项目来解决它。
- 您可以invalidate/cache重启您的android工作室来解决。
- 您可以删除安装 android studio.but 的缓存文件夹,您必须确保 android 工作室已关闭。现在你可以重新启动它,你的问题就解决了。
- 您可以重命名 dagger 组件并重建您的项目以生成 class。这解决了您的问题。
这里有一些快速的方法,你可以尝试解决。