Удаление @JvmSuppressWildcards не работает android кинжал 2.25.2 - PullRequest
0 голосов
/ 06 января 2020

Я обновил свой кинжал с 2.25.2, и согласно последней версии нам больше не нужна @JvmSuppressWildcards эта аннотация. Я удаляю его и пытаюсь запустить приложение, но оно не работает, показывая ошибку сборки кинжала, например:

error: [Dagger/MissingBinding] java.util.Set<? extends com.test.deeplinking.handlers.DeeplinkHandler> cannot be provided without an @Provides-annotated method.

Мой модуль кинжала:

@Module
abstract class DeeplinkHandlerSetModule {

    @Multibinds
    abstract fun deeplinkHandlers(): Set<DeeplinkHandler>

    @Provides
    @JvmStatic
    fun provideEntryDeeplinkHandler(
        set: Set<DeeplinkHandler>, .., ..
    ) = EntryDeeplinkHandler(set, ..., ...)

}

Добавление @JvmSuppressWildcards как set: Set<@JvmSuppressWildcards DeeplinkHandler> работает хорошо. Даже поддерживает ли он от dagger 2.25.2 версию? Кто-нибудь может это подтвердить?

1 Ответ

0 голосов
/ 06 января 2020

Почему, по вашему мнению, @JvmSuppressWildcards больше не нужен? Насколько я могу судить, в примечаниях к выпуску нет ничего связанного с этим. https://github.com/google/dagger/releases

Единственному подобному предмету не требуется @JvmStatic на объектах модуля.

...