I'm configuring the new Dagger Android module but I got this error Here's my Component:
@AppScope @Component(modules = {AppModule.class, NetModule.class}) public interface AppComponent { @Component.Builder interface Builder { @BindsInstance Builder application(ExampleApplication application); @BindsInstance Builder appModule(AppModule appModule); @BindsInstance Builder netModule(NetModule netModule); AppComponent build(); } void inject(ExampleApplication __); ...
Which I build like this in my Application
appComponent = DaggerAppComponent .builder() .application(this) .appModule(new AppModule(this)) .netModule(new NetModule()) .build() .inject(this);
But I still receive the error
Error:(20, 3) error: @Component.Builder is missing setters for required modules or components: [app.example.com.dagger.AppModule]
According to the documentation that should be right, What am I missing?
For example, this could be a valid Component with a Builder:
@Component(modules = {BackendModule.class, FrontendModule.class}) interface MyComponent { MyWidget myWidget(); @Component.Builder interface Builder { MyComponent build(); Builder backendModule(BackendModule bm); Builder frontendModule(FrontendModule fm); } }
Remove the below code from the AppModule.class and rebuild the project
@Provides @Singleton Application provideContext(SomeApplication application) { return application; }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With