In my module in my application base class
component = DaggerCompClassComponent.builder() .classModule(new ModuleClass()).build();
he cannot find DaggerCompClassComponent.
I have a build.gradle module
apply plugin: 'com.neenbedankt.android-apt' ......................... apt 'com.google.dagger:dagger-compiler:2.8' compile 'com.google.dagger:dagger:2.8' provided 'javax.annotation:jsr250-api:1.0'
and in the build.gradle project,
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
I completed the build / rebuild / clean / restart project. I have a Component class where I insert objects and ModuleClass where I provide objects for input.
What could be the reason for not creating the dagger component. class?
EDIT:
This is my ModuleClass added with @Module:
@Provides @Singleton public Interceptor provideInterceptor() { return new Interceptor() { @Override public Response intercept(Chain chain) throws IOException { Request.Builder builder = chain.request().newBuilder(); builder.addHeader("AppName-Android", BuildConfig.VERSION_NAME + "-" + BuildConfig.VERSION_CODE) .addHeader("Content-Type", "application/json"); return chain.proceed(builder.build()); } }; } @Provides @Singleton OkHttpClient provideOkHttpClient(Interceptor interceptor) { OkHttpClient.Builder builder = new OkHttpClient.Builder(); builder.interceptors().add(interceptor); return builder.build(); } @Provides @Singleton Retrofit provideRetrofit(OkHttpClient client) { return new Retrofit.Builder() .baseUrl(BaseApplication.getRes().getString(R.string.api_base_url)) .addConverterFactory(GsonConverterFactory.create()) .client(client) .build(); } @Provides @Singleton WebServiceCall provideWebService(Retrofit retrofit) { return retrofit.create(WebServiceCall.class); }
And this is my component class:
@Component(modules = ModuleClass.class) @Singleton public interface ComponentClass { void inject(Interceptor o); void inject(OkHttpClient o); void inject(Retrofit o); void inject(WebServiceCall o); }
android dagger
herrOn
source share