Caused by: java.util.ServiceConfigurationError: io.ktor.client.HttpClientEngineContainer: Provider io.ktor.client.engine.okhttp.OkHttpEngineContainer not found #2667
Caused by: java.util.ServiceConfigurationError: io.ktor.client.HttpClientEngineContainer: Provider io.ktor.client.engine.okhttp.OkHttpEngineContainer not found
Caused by: java.util.ServiceConfigurationError: io.ktor.client.HttpClientEngineContainer: Provider io.ktor.client.engine.okhttp.OkHttpEngineContainer not found
at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:593) ~[na:na]
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.nextProviderClass(ServiceLoader.java:1219) ~[na:na]
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNextService(ServiceLoader.java:1228) ~[na:na]
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNext(ServiceLoader.java:1273) ~[na:na]
at java.base/java.util.ServiceLoader$2.hasNext(ServiceLoader.java:1309) ~[na:na]
at java.base/java.util.ServiceLoader$3.hasNext(ServiceLoader.java:1393) ~[na:na]
at kotlin.collections.CollectionsKt___CollectionsKt.toCollection(_Collections.kt:1295) ~[kotlin-stdlib-1.7.22.jar:1.7.22-release-288(1.7.22)]
at kotlin.collections.CollectionsKt___CollectionsKt.toMutableList(_Collections.kt:1328) ~[kotlin-stdlib-1.7.22.jar:1.7.22-release-288(1.7.22)]
at kotlin.collections.CollectionsKt___CollectionsKt.toList(_Collections.kt:1319) ~[kotlin-stdlib-1.7.22.jar:1.7.22-release-288(1.7.22)]
at io.ktor.client.HttpClientJvmKt.<clinit>(HttpClientJvm.kt:39) ~[ktor-client-core-jvm-2.3.0.jar:2.3.0]
at love.forte.simbot.qguild.internal.BotImpl.<init>(BotImpl.kt:97) ~[simbot-component-qq-guild-stdlib-jvm-3.0.0.0-alpha.7.jar:na]
at love.forte.simbot.qguild.BotFactory.create(BotConfiguration.kt:46) ~[simbot-component-qq-guild-stdlib-jvm-3.0.0.0-alpha.7.jar:na]
at love.forte.simbot.component.qguild.internal.QQGuildBotManagerImpl.register(QQGuildBotManagerImpl.kt:137) ~[simbot-component-qq-guild-core-3.0.0.0-alpha.7.jar:na]
at love.forte.simbot.component.qguild.BaseQQGuildBotManager.register(BaseQQGuildBotManager.kt:75) ~[simbot-component-qq-guild-core-common-3.0.0.0-alpha.7.jar:na]
at love.forte.simbot.component.qguild.BaseQQGuildBotManager.register(BaseQQGuildBotManager.kt:46) ~[simbot-component-qq-guild-core-common-3.0.0.0-alpha.7.jar:na]
at love.forte.simboot.spring.autoconfigure.SimbotSpringBootBotAutoRegisterBuildConfigure$SimbotSpringBootBotAutoRegisterPostProcessor.register(SimbotSpringBootBotAutoRegisterBuildConfigure.kt:164) ~[simboot-core-spring-boot-starter-3.0.0.jar:na]
at love.forte.simboot.spring.autoconfigure.SimbotSpringBootBotAutoRegisterBuildConfigure$SimbotSpringBootBotAutoRegisterPostProcessor.config(SimbotSpringBootBotAutoRegisterBuildConfigure.kt:115) ~[simboot-core-spring-boot-starter-3.0.0.jar:na]
at love.forte.simboot.spring.autoconfigure.SimbotSpringBootBotAutoRegisterBuildConfigure$SimbotSpringBootBotAutoRegisterPostProcessor.access$config(SimbotSpringBootBotAutoRegisterBuildConfigure.kt:46) ~[simboot-core-spring-boot-starter-3.0.0.jar:na]
at love.forte.simboot.spring.autoconfigure.SimbotSpringBootBotAutoRegisterBuildConfigure$SimbotSpringBootBotAutoRegisterPostProcessor$config$1.invokeSuspend(SimbotSpringBootBotAutoRegisterBuildConfigure.kt) ~[simboot-core-spring-boot-starter-3.0.0.jar:na]
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) ~[kotlin-stdlib-1.7.22.jar:1.7.22-release-288(1.7.22)]
at kotlinx.coroutines.DispatchedTaskKt.resume(DispatchedTask.kt:178) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.DispatchedTaskKt.dispatch(DispatchedTask.kt:166) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.CancellableContinuationImpl.dispatchResume(CancellableContinuationImpl.kt:397) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl(CancellableContinuationImpl.kt:431) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl$default(CancellableContinuationImpl.kt:420) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.CancellableContinuationImpl.resumeWith(CancellableContinuationImpl.kt:328) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.ResumeOnCompletion.invoke(JobSupport.kt:1398) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.notifyCompletion(JobSupport.kt:1520) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.completeStateFinalization(JobSupport.kt:323) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.finalizeFinishingState(JobSupport.kt:240) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.continueCompleting(JobSupport.kt:935) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.access$continueCompleting(JobSupport.kt:27) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport$ChildCompletion.invoke(JobSupport.kt:1155) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.notifyCompletion(JobSupport.kt:1520) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.completeStateFinalization(JobSupport.kt:323) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.finalizeFinishingState(JobSupport.kt:240) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.tryMakeCompletingSlowPath(JobSupport.kt:906) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.tryMakeCompleting(JobSupport.kt:863) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.JobSupport.makeCompletingOnce$kotlinx_coroutines_core(JobSupport.kt:828) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:100) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46) ~[kotlin-stdlib-1.7.22.jar:1.7.22-release-288(1.7.22)]
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664) ~[kotlinx-coroutines-core-jvm-1.6.4.jar:na]
问题描述
在使用mirai的同时使用Ktor的时候,使用
HttpClient()
会出现标题所述异常:似乎是在打 shadow 包的时候将
ktor-client-okhttp
的META-INF/services
里的文件也打进去了,但实际上最终并没有此依赖的引用。目前可以通过手动添加
ktor-client-okhttp
依赖来解决,但是我认为这仍然是个问题。复现
mirai-core 版本
2.14.0
bot-protocol
ANDROID_PHONE
其他组件版本
No response
系统日志
网络日志
No response
补充信息
No response