Estoy tratando de usar install koin pero aparece el siguiente texto cuando paso el mouse sobre él.
Tipo de discrepancia. Requerido: Plugin<TypeVariable(P), TypeVariable(B), TypeVariable(F)> Encontrado: Koin.Feature
el código es como en el siguiente:
import io.ktor.server.application.* import org.koin.ktor.ext.Koin fun Application.configureKoin(){ install(Koin){ } }Parece que está intentando instalar un complemento, que está escrito para Ktor 1.* , en un servidor Ktor con la versión 2.* . Para que funcione, debe usar el servidor Ktor 1.* , por ejemplo, 1.6.7 , o esperar hasta que los desarrolladores de complementos migren a la versión 2.0.0 . Aquí puede encontrar una lista de cambios incompatibles y una guía de migración para Ktor 2.0.0 .
Tenía el mismo problema. ¿Qué versión del complemento ktor estás usando? Estaba usando 2.0.0 beta y cambié a 1.6.4 y ahora funciona. Puede encontrarlo en el archivo gradle.properties.
Hasta que se agregue el complemento Ktor 2.0 para Koin, puede usar la solución a continuación, que se toma de aquí (créditos para phucynwa). Además, puede rastrear la solicitud de extracción aquí.
object KoinPlugin : ApplicationPlugin<Application, KoinApplication, Unit> { override val key: AttributeKey<Unit> get() = AttributeKey("Koin") override fun install( pipeline: Application, configure: KoinApplication.() -> Unit ) { val monitor = pipeline.environment.monitor val koinApplication = startKoin(appDeclaration = configure) monitor.raise(EventDefinition(), koinApplication) monitor.subscribe(ApplicationStopping) { monitor.raise(EventDefinition(), koinApplication) stopKoin() monitor.raise(EventDefinition(), koinApplication) } } } fun Application.installPlugins() { install(KoinPlugin) }