当我使用Android Studio 3.1和Kotlin编译时,我收到此错误消息.我需要配置什么来避免此警告?
warning: Supported source version 'RELEASE_7' from annotation processor 'org.jetbrains.kotlin.kapt3.ProcessorWrapper' less than -source '1.8'
Run Code Online (Sandbox Code Playgroud) Dagger无法识别Kotlin中提供的一种方法。这是模块的重要部分:
@Provides
@AppScope
fun provideClient(cache: Cache, interceptors: List<Interceptor>?): OkHttpClient {
val httpBuilder = OkHttpClient.Builder()
interceptors?.let {
for (interceptor in interceptors) {
httpBuilder.addInterceptor(interceptor)
}
}
return httpBuilder
.cache(cache)
.build()
}
@Provides
@AppScope
fun provideInterceptors(): List<Interceptor>? {
return listOf(HttpLoggingInterceptor().setLevel(WebServiceConfig.LOGGING_LEVEL))
}
Run Code Online (Sandbox Code Playgroud)
错误消息如下:
AppComponent.java:15: error: java.util.List<? extends okhttp3.Interceptor> cannot be provided without an @Provides-annotated method.
Run Code Online (Sandbox Code Playgroud)
如果我使用MutableList,则可以使用。因此,问题是:Dagger2 / Kotlin中的List有什么问题?