删除@JvmSuppressWildcards不起作用android dagger 2.25.2

问题描述 投票:0回答:1

我已经用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版本开始支持?任何人都可以确认吗?

android kotlin dagger-2
1个回答
0
投票

您为什么认为不再需要@JvmSuppressWildcards?据我所知,发行说明中没有任何相关内容。https://github.com/google/dagger/releases

唯一类似的项目不需要模块对象上的@JvmStatic

© www.soinside.com 2019 - 2024. All rights reserved.