From 7db74e232d318bac425e068051a154addad7a077 Mon Sep 17 00:00:00 2001 From: "jiahua.liu" Date: Sun, 22 Mar 2020 20:08:16 +0800 Subject: [PATCH] solve #16 --- .../kotlin/net/mamoe/mirai/console/MiraiConsole.kt | 2 +- .../mamoe/mirai/console/command/DefaultCommands.kt | 12 ++++++++++++ .../net/mamoe/mirai/console/plugins/PluginManager.kt | 2 +- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/MiraiConsole.kt b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/MiraiConsole.kt index d1f4800d2..2f5f5b503 100644 --- a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/MiraiConsole.kt +++ b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/MiraiConsole.kt @@ -103,7 +103,7 @@ object MiraiConsole { * 关闭Console */ fun stop() { - PluginManager.disableAllPlugins() + PluginManager.disablePlugins() CommandManager.cancel() try { bots.forEach { diff --git a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/DefaultCommands.kt b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/DefaultCommands.kt index 05d575544..4988a4482 100644 --- a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/DefaultCommands.kt +++ b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/DefaultCommands.kt @@ -271,5 +271,17 @@ object DefaultCommands { } } + registerCommand { + name = "reload" + alias = listOf("reloadPlugins") + description = "重新加载全部插件" + onCommand{ + PluginManager.disablePlugins() + PluginManager.loadPlugins() + sendMessage("重新加载完成") + true + } + } + } } diff --git a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/plugins/PluginManager.kt b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/plugins/PluginManager.kt index 0d5ea15b3..f54d00d9d 100644 --- a/mirai-console/src/main/kotlin/net/mamoe/mirai/console/plugins/PluginManager.kt +++ b/mirai-console/src/main/kotlin/net/mamoe/mirai/console/plugins/PluginManager.kt @@ -243,7 +243,7 @@ object PluginManager { @JvmOverloads - fun disableAllPlugins(throwable: CancellationException? = null) { + fun disablePlugins(throwable: CancellationException? = null) { nameToPluginBaseMap.values.forEach { it.disable(throwable) }