注入ポイントがあります:
public class Receiver {
private final Set<Sender> senders;
@Inject
public Receiver(@Named("Test") Set<Sender> senders){
this.senders = senders;
}
}
さらに、依存関係を提供するこのモジュールがあります。
@Module
public class MyModule {
@Provides(type = Provides.Type.SET)
@Singleton
@Named("Test")
public Sender provideSender(){
return new SpecificSender();
}
}
しかし、dagger 2 APT は適切なクラスを作成できません。APT から次の例外が発生します。
Caused by: java.lang.UnsupportedOperationException
at dagger.internal.codegen.KeyVariableNamer.apply(KeyVariableNamer.java:44)
誰も同じ問題を抱えていますか?良い回避策はありますか?
Named アノテーションをドロップすると、機能します。私はダガー2.0を使用しています
ありがとうございました