Мультисвязывание с дженериками
Я пытаюсь создать Multibinder<A<? extends B>>
, Я пытался использовать Multibinder.newSetBinder(binder(), A.class)
, Второй параметр - это Class<T>
это делает в моем модуле guice ошибку несоответствия типов.
Multibinder<A<? extends B>> multibinder = Multibinder.newSetBinder(binder(), A.class)
Можно ли связать такие родовые коллекции? Может быть, я мог бы использовать другой вид Multibinder
? У кого-нибудь есть какие-либо идеи?
1 ответ
Решение
Есть версия, которая принимает TypeLiteral
final Multibinder<List<? extends Number>> multibinder =
Multibinder.newSetBinder(binder(), new TypeLiteral<List<? extends Number>>() {})