私はguice3とguice-servlet3を使用しています。モジュールでは、この種のバインディングを定義しました。
[...]
bind(View.class).annotatedWith(Names.named("view1")).to(View1Impl.class);
bind(View.class).annotatedWith(Names.named("view2")).to(View2Impl.class);
[...]
注入されたクラスView1Implで、次のように定義しました。
public class View1Impl {
@Inject @Named("view1") Provider<View> viewProvider;
@Inject
void init() {
View viewA = viewProvider.get();
View viewB = viewProvider.get();
log.debug(viewA == viewB);
log.debug(viewA == this);
}
}
どちらのステートメントもtrueを返します。しかし、そうではないはずです。
私は何が間違っているのですか?