yyuueexxiinngg / onebot-kotlin

OneBot标准的Kotlin实现及mirai插件 - 原cqhttp-mirai
GNU Affero General Public License v3.0
584 stars 139 forks source link

[BUG] E/OneBot: Exception in coroutine Plugin OneBot of OneBot #123

Closed Ukenn2112 closed 3 years ago

Ukenn2112 commented 3 years ago

在正常登入和配置完成后出现‘E/OneBot: Exception in coroutine Plugin OneBot of OneBot’ 无法正常使用

2020-12-25 00:06:57 E/OneBot: Exception in coroutine Plugin OneBot of OneBot
java.lang.IncompatibleClassChangeError: Found interface net.mamoe.mirai.Bot, but class was expected
        at com.github.yyuueexxiinngg.onebot.PluginBase$onEnable$2.invokeSuspend(PluginBase.kt:75)
        at com.github.yyuueexxiinngg.onebot.PluginBase$onEnable$2.invoke(PluginBase.kt)
        at net.mamoe.mirai.event.SubscriberKt__SubscriberKt$subscribeAlways$1.invokeSuspend(subscriber.kt:271)
        at net.mamoe.mirai.event.SubscriberKt__SubscriberKt$subscribeAlways$1.invoke(subscriber.kt)
        at net.mamoe.mirai.event.internal.Handler$onEvent$2.invokeSuspend(InternalEventListeners.kt:73)
        at net.mamoe.mirai.event.internal.Handler$onEvent$2.invoke(InternalEventListeners.kt)
        at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:91)
        at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:161)
        at kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
        at net.mamoe.mirai.event.internal.Handler.onEvent(InternalEventListeners.kt:73)
        at net.mamoe.mirai.event.EventKt.broadcast(Event.kt:241)

复现

正常登录时

版本

onebot-mirai- 0.3.3

mirai-core-2.0-M1-1

mirai-console-2.0-M1-1

a08381 commented 3 years ago

onebot-mirai 0.3.3现在还不支持mirai2.0-M1-1

我手动做了一个支持的出来

https://github.com/a08381/onebot-kotlin/actions/runs/446492092

如果有如下的报错,要把java换成openjdk(

2020-12-27 13:20:31 W/stderr: java.security.NoSuchProviderException: JCE cannot authenticate the provider BC
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.getInstance(JceSecurity.java:105)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.KeyAgreement.getInstance(KeyAgreement.java:230)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDH$Companion.calculateShareKey(ECDHJvmDesktop.kt:81)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDH$Companion$1$1.invoke(ECDHJvmDesktop.kt:49)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDH.<clinit>(ECDHJvmDesktop.kt:61)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDHJvmDesktopKt.ECDH(ECDHJvmDesktop.kt:34)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.network.QQAndroidClient.<init>(QQAndroidClient.kt:75)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.QQAndroidBot.<init>(QQAndroidBot.kt:48)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.BotFactoryImpl.newBot(BotFactory.kt:30)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.BotFactory$INSTANCE.newBot(BotFactory.kt:74)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.MiraiConsole$INSTANCE.addBotImpl(MiraiConsole.kt:161)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.MiraiConsole$INSTANCE.addBot(MiraiConsole.kt:125)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.MiraiConsole$INSTANCE.addBot$default(MiraiConsole.kt:124)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.BuiltInCommands$LoginCommand.handle(BuiltInCommands.kt:158)
2020-12-27 13:20:31 W/stderr:   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2020-12-27 13:20:31 W/stderr:   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2020-12-27 13:20:31 W/stderr:   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2020-12-27 13:20:31 W/stderr:   at java.lang.reflect.Method.invoke(Unknown Source)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.calls.CallerImpl$Method.callMethod(CallerImpl.kt:97)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.calls.CallerImpl$Method$Instance.call(CallerImpl.kt:113)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.KCallableImpl.call(KCallableImpl.kt:108)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.KCallableImpl.callDefaultMethod$kotlin_reflection(KCallableImpl.kt:159)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.full.KCallables.callSuspendBy(KCallables.kt:73)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.internal.command.CommandReflector$findSubCommands$6$1.invokeSuspend(CommandReflector.kt:283)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.internal.command.CommandReflector$findSubCommands$6$1.invoke(CommandReflector.kt)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.descriptor.CommandSignatureFromKFunctionImpl.call$suspendImpl(CommandSignature.kt:88)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.descriptor.CommandSignatureFromKFunctionImpl.call(CommandSignature.kt)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.internal.command.CommandManagerImplKt.executeCommandImpl(CommandManagerImpl.kt:161)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.CommandManager.executeCommand(CommandManager.kt:129)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.CommandManager$INSTANCE.executeCommand(CommandManager.kt)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.terminal.ConsoleThreadKt$startupConsoleThread$3.invokeSuspend(ConsoleThread.kt:183)
2020-12-27 13:20:31 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
2020-12-27 13:20:31 W/stderr: Caused by: java.util.jar.JarException: file:/root/onebot/onebot-kotlin-0.3.3-UNOFFICIAL-all.jar has unsigned entries - com/github/yyuueexxiinngg/onebot/MainKt$runMirai$1$1.class
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:510)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JarVerifier.verifyJars(JarVerifier.java:371)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JarVerifier.verify(JarVerifier.java:297)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.verifyProviderJar(JceSecurity.java:164)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.getVerificationResult(JceSecurity.java:190)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.getInstance(JceSecurity.java:102)
2020-12-27 13:20:31 W/stderr:   ... 36 more
Ukenn2112 commented 3 years ago

感谢,问题已解决,故关闭此issue

a08381 commented 3 years ago

感谢,问题已解决,故关闭此issue

有空的话帮我测试一下cq码的face和poke正不正常,我换了写法

SnowMoonSS commented 3 years ago

onebot-mirai 0.3.3现在还不支持mirai2.0-M1-1

我手动做了一个支持的出来

https://github.com/a08381/onebot-kotlin/actions/runs/446492092

如果有如下的报错,要把java换成openjdk(

2020-12-27 13:20:31 W/stderr: java.security.NoSuchProviderException: JCE cannot authenticate the provider BC
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.getInstance(JceSecurity.java:105)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.KeyAgreement.getInstance(KeyAgreement.java:230)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDH$Companion.calculateShareKey(ECDHJvmDesktop.kt:81)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDH$Companion$1$1.invoke(ECDHJvmDesktop.kt:49)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDH.<clinit>(ECDHJvmDesktop.kt:61)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDHJvmDesktopKt.ECDH(ECDHJvmDesktop.kt:34)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.network.QQAndroidClient.<init>(QQAndroidClient.kt:75)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.QQAndroidBot.<init>(QQAndroidBot.kt:48)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.BotFactoryImpl.newBot(BotFactory.kt:30)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.BotFactory$INSTANCE.newBot(BotFactory.kt:74)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.MiraiConsole$INSTANCE.addBotImpl(MiraiConsole.kt:161)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.MiraiConsole$INSTANCE.addBot(MiraiConsole.kt:125)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.MiraiConsole$INSTANCE.addBot$default(MiraiConsole.kt:124)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.BuiltInCommands$LoginCommand.handle(BuiltInCommands.kt:158)
2020-12-27 13:20:31 W/stderr:   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2020-12-27 13:20:31 W/stderr:   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2020-12-27 13:20:31 W/stderr:   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2020-12-27 13:20:31 W/stderr:   at java.lang.reflect.Method.invoke(Unknown Source)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.calls.CallerImpl$Method.callMethod(CallerImpl.kt:97)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.calls.CallerImpl$Method$Instance.call(CallerImpl.kt:113)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.KCallableImpl.call(KCallableImpl.kt:108)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.KCallableImpl.callDefaultMethod$kotlin_reflection(KCallableImpl.kt:159)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.full.KCallables.callSuspendBy(KCallables.kt:73)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.internal.command.CommandReflector$findSubCommands$6$1.invokeSuspend(CommandReflector.kt:283)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.internal.command.CommandReflector$findSubCommands$6$1.invoke(CommandReflector.kt)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.descriptor.CommandSignatureFromKFunctionImpl.call$suspendImpl(CommandSignature.kt:88)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.descriptor.CommandSignatureFromKFunctionImpl.call(CommandSignature.kt)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.internal.command.CommandManagerImplKt.executeCommandImpl(CommandManagerImpl.kt:161)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.CommandManager.executeCommand(CommandManager.kt:129)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.CommandManager$INSTANCE.executeCommand(CommandManager.kt)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.terminal.ConsoleThreadKt$startupConsoleThread$3.invokeSuspend(ConsoleThread.kt:183)
2020-12-27 13:20:31 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
2020-12-27 13:20:31 W/stderr: Caused by: java.util.jar.JarException: file:/root/onebot/onebot-kotlin-0.3.3-UNOFFICIAL-all.jar has unsigned entries - com/github/yyuueexxiinngg/onebot/MainKt$runMirai$1$1.class
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:510)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JarVerifier.verifyJars(JarVerifier.java:371)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JarVerifier.verify(JarVerifier.java:297)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.verifyProviderJar(JceSecurity.java:164)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.getVerificationResult(JceSecurity.java:190)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.getInstance(JceSecurity.java:102)
2020-12-27 13:20:31 W/stderr:   ... 36 more

呃……mirai那边更新到2.0-M2了,似乎又不能用了:

2020-12-29 13:52:16 W/stderr: Exception in thread "DefaultDispatcher-worker-1" java.lang.NoClassDefFoundError: net/mamoe/mirai/utils/ExternalImageJvmKt
2020-12-29 13:52:16 W/stderr:   at com.github.yyuueexxiinngg.onebot.util.CQMessgeParserKt$tryResolveMedia$2.invokeSuspend(CQMessgeParser.kt:420)
2020-12-29 13:52:16 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
2020-12-29 13:52:16 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
2020-12-29 13:52:16 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
2020-12-29 13:52:16 W/stderr: Caused by: java.lang.ClassNotFoundException: net.mamoe.mirai.utils.ExternalImageJvmKt
2020-12-29 13:52:16 W/stderr:   at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
2020-12-29 13:52:16 W/stderr:   at net.mamoe.mirai.console.internal.plugin.JvmPluginClassLoader.findClass$mirai_console(JvmPluginClassLoader.kt:104)
2020-12-29 13:52:16 W/stderr:   at net.mamoe.mirai.console.internal.plugin.JvmPluginClassLoader.findClass(JvmPluginClassLoader.kt:51)
2020-12-29 13:52:16 W/stderr:   at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:589)
2020-12-29 13:52:16 W/stderr:   at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
2020-12-29 13:52:16 W/stderr:   ... 17 more
a08381 commented 3 years ago

onebot-mirai 0.3.3现在还不支持mirai2.0-M1-1 我手动做了一个支持的出来 https://github.com/a08381/onebot-kotlin/actions/runs/446492092 如果有如下的报错,要把java换成openjdk(

2020-12-27 13:20:31 W/stderr: java.security.NoSuchProviderException: JCE cannot authenticate the provider BC
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.getInstance(JceSecurity.java:105)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.KeyAgreement.getInstance(KeyAgreement.java:230)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDH$Companion.calculateShareKey(ECDHJvmDesktop.kt:81)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDH$Companion$1$1.invoke(ECDHJvmDesktop.kt:49)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDH.<clinit>(ECDHJvmDesktop.kt:61)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.utils.crypto.ECDHJvmDesktopKt.ECDH(ECDHJvmDesktop.kt:34)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.network.QQAndroidClient.<init>(QQAndroidClient.kt:75)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.QQAndroidBot.<init>(QQAndroidBot.kt:48)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.internal.BotFactoryImpl.newBot(BotFactory.kt:30)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.BotFactory$INSTANCE.newBot(BotFactory.kt:74)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.MiraiConsole$INSTANCE.addBotImpl(MiraiConsole.kt:161)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.MiraiConsole$INSTANCE.addBot(MiraiConsole.kt:125)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.MiraiConsole$INSTANCE.addBot$default(MiraiConsole.kt:124)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.BuiltInCommands$LoginCommand.handle(BuiltInCommands.kt:158)
2020-12-27 13:20:31 W/stderr:   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2020-12-27 13:20:31 W/stderr:   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
2020-12-27 13:20:31 W/stderr:   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2020-12-27 13:20:31 W/stderr:   at java.lang.reflect.Method.invoke(Unknown Source)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.calls.CallerImpl$Method.callMethod(CallerImpl.kt:97)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.calls.CallerImpl$Method$Instance.call(CallerImpl.kt:113)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.KCallableImpl.call(KCallableImpl.kt:108)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.jvm.internal.KCallableImpl.callDefaultMethod$kotlin_reflection(KCallableImpl.kt:159)
2020-12-27 13:20:31 W/stderr:   at kotlin.reflect.full.KCallables.callSuspendBy(KCallables.kt:73)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.internal.command.CommandReflector$findSubCommands$6$1.invokeSuspend(CommandReflector.kt:283)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.internal.command.CommandReflector$findSubCommands$6$1.invoke(CommandReflector.kt)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.descriptor.CommandSignatureFromKFunctionImpl.call$suspendImpl(CommandSignature.kt:88)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.descriptor.CommandSignatureFromKFunctionImpl.call(CommandSignature.kt)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.internal.command.CommandManagerImplKt.executeCommandImpl(CommandManagerImpl.kt:161)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.CommandManager.executeCommand(CommandManager.kt:129)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.command.CommandManager$INSTANCE.executeCommand(CommandManager.kt)
2020-12-27 13:20:31 W/stderr:   at net.mamoe.mirai.console.terminal.ConsoleThreadKt$startupConsoleThread$3.invokeSuspend(ConsoleThread.kt:183)
2020-12-27 13:20:31 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
2020-12-27 13:20:31 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
2020-12-27 13:20:31 W/stderr: Caused by: java.util.jar.JarException: file:/root/onebot/onebot-kotlin-0.3.3-UNOFFICIAL-all.jar has unsigned entries - com/github/yyuueexxiinngg/onebot/MainKt$runMirai$1$1.class
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:510)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JarVerifier.verifyJars(JarVerifier.java:371)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JarVerifier.verify(JarVerifier.java:297)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.verifyProviderJar(JceSecurity.java:164)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.getVerificationResult(JceSecurity.java:190)
2020-12-27 13:20:31 W/stderr:   at javax.crypto.JceSecurity.getInstance(JceSecurity.java:102)
2020-12-27 13:20:31 W/stderr:   ... 36 more

呃……mirai那边更新到2.0-M2了,似乎又不能用了:

2020-12-29 13:52:16 W/stderr: Exception in thread "DefaultDispatcher-worker-1" java.lang.NoClassDefFoundError: net/mamoe/mirai/utils/ExternalImageJvmKt
2020-12-29 13:52:16 W/stderr:   at com.github.yyuueexxiinngg.onebot.util.CQMessgeParserKt$tryResolveMedia$2.invokeSuspend(CQMessgeParser.kt:420)
2020-12-29 13:52:16 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
2020-12-29 13:52:16 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
2020-12-29 13:52:16 W/stderr:   at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
2020-12-29 13:52:16 W/stderr:   at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
2020-12-29 13:52:16 W/stderr:   at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
2020-12-29 13:52:16 W/stderr: Caused by: java.lang.ClassNotFoundException: net.mamoe.mirai.utils.ExternalImageJvmKt
2020-12-29 13:52:16 W/stderr:   at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
2020-12-29 13:52:16 W/stderr:   at net.mamoe.mirai.console.internal.plugin.JvmPluginClassLoader.findClass$mirai_console(JvmPluginClassLoader.kt:104)
2020-12-29 13:52:16 W/stderr:   at net.mamoe.mirai.console.internal.plugin.JvmPluginClassLoader.findClass(JvmPluginClassLoader.kt:51)
2020-12-29 13:52:16 W/stderr:   at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:589)
2020-12-29 13:52:16 W/stderr:   at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
2020-12-29 13:52:16 W/stderr:   ... 17 more

这个我知道,很好改的。

Ukenn2112 commented 3 years ago

感谢,问题已解决,故关闭此issue

有空的话帮我测试一下cq码的face和poke正不正常,我换了写法

表情发送能正常使用 戳一戳等功能无法使用

a08381 commented 3 years ago

感谢,问题已解决,故关闭此issue

有空的话帮我测试一下cq码的face和poke正不正常,我换了写法

表情发送能正常使用 戳一戳等功能无法使用

戳一戳是怎么发的呢?试试[CQ:poke,id=-1,type=1,name=戳一戳]看看?

a08381 commented 3 years ago

@SnowMoonSS 已经跟进到Mirai-2.0-M2。

https://github.com/a08381/onebot-kotlin/actions/runs/450458561

Ukenn2112 commented 3 years ago

感谢,问题已解决,故关闭此issue

有空的话帮我测试一下cq码的face和poke正不正常,我换了写法

表情发送能正常使用

戳一戳等功能无法使用

戳一戳是怎么发的呢?试试[CQ:poke,id=-1,type=1,name=戳一戳]看看?

 [mirai:source:[6502],[1074932090]][mirai:poke:,0,0]
2020-12-29 17:27:43 E/OneBot: io.ktor.client.features.ServerResponseException: Server error(http://127.0.0.1:8000/: 500 INTERNAL SERVER ERROR.
io.ktor.client.features.ServerResponseException: Server error(http://127.0.0.1:8000/: 500 INTERNAL SERVER ERROR.
at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:36)
at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(DefaultResponseValidation.kt)
at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:37)
at io.ktor.client.features.HttpCallValidator$Companion$install$2.invokeSuspend(HttpCallValidator.kt:96)
at io.ktor.client.features.HttpCallValidator$Companion$install$2.invoke(HttpCallValidator.kt)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:243)
at io.ktor.util.pipeline.SuspendFunctionGun.proceed(SuspendFunctionGun.kt:113)
at io.ktor.util.pipeline.SuspendFunctionGun.execute(SuspendFunctionGun.kt:133)
at io.ktor.util.pipeline.Pipeline.execute(Pipeline.kt:77)
at io.ktor.client.call.HttpClientCall.receive(HttpClientCall.kt:82)
at com.github.yyuueexxiinngg.onebot.web.http.ReportService.report(ReportService.kt:212)
at com.github.yyuueexxiinngg.onebot.web.http.ReportService$report$1.invokeSuspend(ReportService.kt)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665) 

image

以上是发送了戳一戳之后的log

a08381 commented 3 years ago

以上是发送了戳一戳之后的log

试着修复了一下,用Mirai-2.0-M2测试一下我的最新构建吧

https://github.com/a08381/onebot-kotlin/actions/runs/450511512

不要用2.0-M1,不兼容的

SnowMoonSS commented 3 years ago

@SnowMoonSS 已经跟进到Mirai-2.0-M2。

https://github.com/a08381/onebot-kotlin/actions/runs/450458561

感谢,它现在好了:)

Ukenn2112 commented 3 years ago

以上是发送了戳一戳之后的log

试着修复了一下,用Mirai-2.0-M2测试一下我的最新构建吧

https://github.com/a08381/onebot-kotlin/actions/runs/450511512

不要用2.0-M1,不兼容的

用Mirai-2.0-M2以及您最新的构建貌似还是有些问题

以下是使用“戳一戳”的log


2020-12-29 19:24:20 E/OneBot: io.ktor.client.features.ServerResponseException: Server error(http://127.0.0.1:8000/: 500 INTERNAL SERVER ERROR. Text: "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>500 Internal Server Error</title>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.</p>
"
io.ktor.client.features.ServerResponseException: Server error(http://127.0.0.1:8000/: 500 INTERNAL SERVER ERROR. Text: "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>500 Internal Server Error</title>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.</p>
"
at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:39)
at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(DefaultResponseValidation.kt)
at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:54)
at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(HttpCallValidator.kt:129)
at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(HttpCallValidator.kt)
at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(HttpSend.kt:99)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

image

a08381 commented 3 years ago

以上是发送了戳一戳之后的log

试着修复了一下,用Mirai-2.0-M2测试一下我的最新构建吧

https://github.com/a08381/onebot-kotlin/actions/runs/450511512

不要用2.0-M1,不兼容的

用Mirai-2.0-M2以及您最新的构建貌似还是有些问题

以下是使用“戳一戳”的log


2020-12-29 19:24:20 E/OneBot: io.ktor.client.features.ServerResponseException: Server error(http://127.0.0.1:8000/: 500 INTERNAL SERVER ERROR. Text: "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>500 Internal Server Error</title>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.</p>
"
io.ktor.client.features.ServerResponseException: Server error(http://127.0.0.1:8000/: 500 INTERNAL SERVER ERROR. Text: "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>500 Internal Server Error</title>
<h1>Internal Server Error</h1>
<p>The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.</p>
"
at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invokeSuspend(DefaultResponseValidation.kt:39)
at io.ktor.client.features.DefaultResponseValidationKt$addDefaultResponseValidation$1$1.invoke(DefaultResponseValidation.kt)
at io.ktor.client.features.HttpCallValidator.validateResponse(HttpCallValidator.kt:54)
at io.ktor.client.features.HttpCallValidator$Companion$install$3.invokeSuspend(HttpCallValidator.kt:129)
at io.ktor.client.features.HttpCallValidator$Companion$install$3.invoke(HttpCallValidator.kt)
at io.ktor.client.features.HttpSend$Feature$install$1.invokeSuspend(HttpSend.kt:99)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at io.ktor.util.pipeline.SuspendFunctionGun.resumeRootWith(SuspendFunctionGun.kt:188)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:144)
at io.ktor.util.pipeline.SuspendFunctionGun.access$loop(SuspendFunctionGun.kt:15)
at io.ktor.util.pipeline.SuspendFunctionGun$continuation$1.resumeWith(SuspendFunctionGun.kt:90)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:738)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

image

讲真的,我稍微有点没看懂,报错信息中没有mirai和onebot的跟踪点,看不懂,不太好断定

Ukenn2112 commented 3 years ago

以上是发送了戳一戳之后的log

试着修复了一下,用Mirai-2.0-M2测试一下我的最新构建吧 https://github.com/a08381/onebot-kotlin/actions/runs/450511512 不要用2.0-M1,不兼容的

用Mirai-2.0-M2以及您最新的构建貌似还是有些问题 以下是使用“戳一戳”的log

image

讲真的,我稍微有点没看懂,报错信息中没有mirai和onebot的跟踪点,看不懂,不太好断定

我目前使用的是 OneBot-mirai + EFB QQ Slave Channel:EFB QQ 从端 (EQS) 来实现QQ与Telegram互联

会不会可能EFB本身就不支持“戳一戳”的转发?而并不是OneBot-mirai的问题

其实我是个小白( 最近才入坑,啥也不懂(((

a08381 commented 3 years ago

我目前使用的是 OneBot-mirai + EFB QQ Slave Channel:EFB QQ 从端 (EQS) 来实现QQ与Telegram互联

会不会可能EFB本身就不支持“戳一戳”的转发?而并不是OneBot-mirai的问题

其实我是个小白( 最近才入坑,啥也不懂(((

大概是吧,报错信息里有onebot访问8000端口返回500的情况,应该是EFB本身不支持。