Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

/lua命令相关问题 #74

Closed
xxj7527 opened this issue May 18, 2022 · 11 comments
Closed

/lua命令相关问题 #74

xxj7527 opened this issue May 18, 2022 · 11 comments

Comments

@xxj7527
Copy link

xxj7527 commented May 18, 2022

/lua script restart 0 老问题了 新版本测试问题还在 报错如下 (多平台测试全平台都存在该问题)

/lua script restart 0
2022-05-18 23:29:06 E/console: java.lang.reflect.InvocationTargetException
java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at kotlin.reflect.jvm.internal.calls.CallerImpl$Method.callMethod(CallerImpl.kt:97)
at kotlin.reflect.jvm.internal.calls.CallerImpl$Method$Instance.call(CallerImpl.kt:113)
at kotlin.reflect.jvm.internal.KCallableImpl.call(KCallableImpl.kt:108)
at kotlin.reflect.jvm.internal.KCallableImpl.callDefaultMethod$kotlin_reflection(KCallableImpl.kt:159)
at kotlin.reflect.full.KCallables.callSuspendBy(KCallables.kt:74)
at net.mamoe.mirai.console.internal.command.CommandReflector$findSubCommands$6$1.invokeSuspend(CommandReflector.kt:305)
at net.mamoe.mirai.console.internal.command.CommandReflector$findSubCommands$6$1.invoke(CommandReflector.kt)
at net.mamoe.mirai.console.internal.command.CommandReflector$findSubCommands$6$1.invoke(CommandReflector.kt)
at net.mamoe.mirai.console.command.descriptor.CommandSignatureFromKFunctionImpl.call$suspendImpl(CommandSignature.kt:88)
at net.mamoe.mirai.console.command.descriptor.CommandSignatureFromKFunctionImpl.call(CommandSignature.kt)
at net.mamoe.mirai.console.internal.command.CommandManagerImplKt.executeCommandImpl(CommandManagerImpl.kt:167)
at net.mamoe.mirai.console.command.CommandManager.executeCommand(CommandManager.kt:131)
at net.mamoe.mirai.console.command.CommandManager$INSTANCE.executeCommand(CommandManager.kt)
at net.mamoe.mirai.console.terminal.ConsoleThreadKt$startupConsoleThread$3.invokeSuspend(ConsoleThread.kt:191)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
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:750)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
Caused by: com.github.only52607.luamirai.core.script.BotScriptException: Script has not been started
at com.github.only52607.luamirai.core.script.AbstractBotScript.stop(AbstractBotScript.kt:40)
at com.github.only52607.luamirai.console.LuaMiraiCommand.restart(LuaMiraiCommand.kt:123)
... 24 more

第二个问题 net.mamoe:chat-command 插件里qq对话无法使用lua任何命令 均为以下提示:

参数不匹配, 你是否想执行:
/lua xxx (参数类型错误)
如:
参数不匹配, 你是否想执行:
/lua script start <脚本源编号> (参数类型错误)
参数不匹配, 你是否想执行:
/lua source add <文件名或URL> (参数类型错误)

第三建议 增加像java独立版那样 ai.lua自动运行的脚本 这样上面问题可以不着急修复。java独立版本也是多平台测试执行无效 只能先借助mirai

@only52607
Copy link
Owner

问题1检查下你的脚本是不是启用状态,如果不是启用状态无法调用restart
问题2是console自身不支持多级指令解析的固有问题,目前只能等那边完善
问题3附上详细报错

@xxj7527
Copy link
Author

xxj7527 commented May 18, 2022

问题1检查下你的脚本是不是启用状态,如果不是启用状态无法调用restart 问题2是console自身不支持多级指令解析的固有问题,目前只能等那边完善 问题3附上详细报错

哦 1刚好是在脚本出问题的时候需要重新载入才使用 刚看了一下原来出问题不算在运行? 但是在list里

问题3主要是想让你加一个开机自启的命令 不知道方不方便
java版本提示如下 不知道是不是我用法错误

Usage: commander [OPTIONS] COMMAND [ARGS]...
Options:
-h, --help Show this message and exit
Commands:
exec 运行脚本

@only52607
Copy link
Owner

启动单个脚本的命令示例如下,检查你的用法是否有误。
java -jar lua-mirai-executable-all.jar exec xx.lua

开机自启可以通过操作系统提供的命令或工具配置实现,具体方法可以自行搜索。

@xxj7527
Copy link
Author

xxj7527 commented May 18, 2022

启动单个脚本的命令示例如下,检查你的用法是否有误。 java -jar lua-mirai-executable-all.jar exec xx.lua

开机自启可以通过操作系统提供的命令或工具配置实现,具体方法可以自行搜索。

我说的不是java版本开机自启..因为在你的 文档里是这样描述的:

在 jar 目录下,创建 ai.lua 文件,并填入以下代码。

我还以为是运行jar自动运行ai.lua呢

我是指依赖mcl的lua_mirai自启,而不是mcl的随着Linux开机自启

目前即使有source还是需要手动执行 /lua script start 0 ,这个好像无法通过Linux那边多级操作,希望加一个mcl启动lua_mirai插件时自动运行脚本源产生的脚本。

@only52607
Copy link
Owner

你是想说插件在第二次启动的时候,可以自动启动第一次已经启动的脚本吗。

这个功能是已有的,插件在运行时,脚本的加载信息会被导出到一个json配置文件中,第二次启动时会读取这个配置文件来启动先前启动的脚本。

如果这个功能没有正常工作,可以另开issue反馈。

@xxj7527
Copy link
Author

xxj7527 commented May 18, 2022

原来是这样啊。我之前只有看到source的脚本源配置文件,script的配置文件倒是没认真找过,好像也没自动生效过。

不过这种设定是不是有点奇怪呢?如果上一次是在测试或者临时运行脚本,手动想结束重启mirai或者mirai进程问题,这样下次还会自动运行不想运行的脚本?

我的意思是是否可以加一种命令 例如
/lua source addauto <文件路径或者直链地址> 来增加一个luamirai运行时自启的脚本源 lm启动时会自动读取该源并且加到script里运行

这样来手动添加 这提议如何呢?

@xxj7527
Copy link
Author

xxj7527 commented May 18, 2022

关于你说的 会自动启用上一次运行的脚本 我倒是没成功过,我再另行测试 有问题再开issue

@only52607
Copy link
Owner

原来是这样啊。我之前只有看到source的脚本源配置文件,script的配置文件倒是没认真找过,好像也没自动生效过。

不过这种设定是不是有点奇怪呢?如果上一次是在测试或者临时运行脚本,手动想结束重启mirai或者mirai进程问题,这样下次还会自动运行不想运行的脚本?

我的意思是是否可以加一种命令 例如 /lua source addauto <文件路径或者直链地址> 来增加一个luamirai运行时自启的脚本源 lm启动时会自动读取该源并且加到script里运行

这样来手动添加 这提议如何呢?

可以考虑添加这个功能,请另开issue

@xxj7527
Copy link
Author

xxj7527 commented May 19, 2022

问题1检查下你的脚本是不是启用状态,如果不是启用状态无法调用restart 问题2是console自身不支持多级指令解析的固有问题,目前只能等那边完善 问题3附上详细报错

突然想到我成功使用过别的插件多级命令。

刚刚测试了一下别的插件,之前也测试过别的插件 多级命令都是正常的 那边应该是支持。

@xxj7527 xxj7527 reopened this May 19, 2022
@only52607
Copy link
Owner

问题1检查下你的脚本是不是启用状态,如果不是启用状态无法调用restart 问题2是console自身不支持多级指令解析的固有问题,目前只能等那边完善 问题3附上详细报错

突然想到我成功使用过别的插件多级命令。

刚刚测试了一下别的插件,之前也测试过别的插件 多级命令都是正常的 那边应该是支持。

刚刚去看过了,像是

/<bili-dynamic B动态> <add 添加> [uid] [contact]?

这样的命令实际上是二级指令,后面的uid和contact是指令参数。

lm中的

/lua script start 0

这样的指令是三级指令,据我的观察,目前Console提供的CompositeCommand只支持解析指令到二级,如果有别的插件支持三级或更多指令,也可以发出来作为参考。

@only52607
Copy link
Owner

#65 重复,转移到该issue下

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants