たとえば、私は、インターフェイスを次ていますダガー2エラー:「RepositoryImplが提供する、アノテーション付きメソッド@Injectコンストラクタなしまたは@から提供することはできません」
public interface Repository {
Observable<Pojo> getPojos();
}
とその実装:
public class RepositoryImpl implements Repository {
public RepositoryImpl() {
}
@Override
public Observable<Pojo> getPojos() {
return null;
}
}
モジュール:
@Module
class AppModule {
public AppModule() {
}
@Provides
@Singleton
Repository provideRepositoryImpl() {
return new RepositoryImpl();
}
}
とコンポーネント:
@Singleton
@Component(modules = { AppModule.class })
public interface AppComponent {
void inject(MainActivity mainActivity);
}
プロジェクトをビルドしようとすると、問題のタイトルのようにエラーが発生します。私のコードにはどんな問題がありますか?
通常どこ注入ですアプリケーションクラスのために? –