From 00f90fe3aca0a947370225241437809a3f291078 Mon Sep 17 00:00:00 2001 From: "jiahua.liu" Date: Tue, 26 May 2020 16:59:15 +0800 Subject: [PATCH 1/6] Composite Command Test pass --- .../net/mamoe/mirai/console/command/Command.kt | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/backend/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/Command.kt b/backend/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/Command.kt index 4ec428e7b..609ae4cf9 100644 --- a/backend/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/Command.kt +++ b/backend/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/Command.kt @@ -102,8 +102,7 @@ abstract class CompositeCommand @JvmOverloads constructor( "", CommandPermission.Default, onCommand = block { sender: CommandSender, args: Array -> - println("default finally got args: ${args.joinToString()}") - true + false//not supported yet } ) } @@ -114,17 +113,8 @@ abstract class CompositeCommand @JvmOverloads constructor( this@CompositeCommand::class.declaredFunctions.filter { it.hasAnnotation() }.map { function -> - function.parameters.forEach { - println(it) - println(it.type.classifier) - println() - println() - } - val notStatic = function.findAnnotation()==null - val overridePermission = function.findAnnotation()//optional - val subDescription = function.findAnnotation()?.description?:"no description available" if((function.returnType.classifier as? KClass<*>)?.isSubclassOf(Boolean::class) != true){ @@ -132,7 +122,6 @@ abstract class CompositeCommand @JvmOverloads constructor( } val parameter = function.parameters.toMutableList() - if (parameter.isEmpty()){ throw IllegalParameterException("First parameter (receiver for kotlin) for sub commend " + function.name + " from " + this.getPrimaryName() + " should be ") } @@ -170,7 +159,7 @@ abstract class CompositeCommand @JvmOverloads constructor( } val argName = it.findAnnotation()?.name?:it.name?:"unknown" - buildUsage.append("<").append(argName).append("> ").append(" ") + buildUsage.append("<").append(argName).append("> ") CommandParam( argName, (it.type.classifier as? KClass<*>)?: throw IllegalParameterException("unsolved type reference from param " + it.name + " in " + function.name + " from " + this.getPrimaryName())) From 86f23e5452761a5c0a616687ed75bcc3b50a5153 Mon Sep 17 00:00:00 2001 From: "jiahua.liu" Date: Tue, 26 May 2020 17:02:54 +0800 Subject: [PATCH 2/6] Composite Command Test pass --- .../src/main/kotlin/net/mamoe/mirai/console/command/Command.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/Command.kt b/backend/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/Command.kt index 3b1b85c36..1f4f26668 100644 --- a/backend/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/Command.kt +++ b/backend/mirai-console/src/main/kotlin/net/mamoe/mirai/console/command/Command.kt @@ -144,7 +144,7 @@ abstract class CompositeCommand @JvmOverloads constructor( val parameter = function.parameters.toMutableList() if (parameter.isEmpty()){ - throw IllegalParameterException("First parameter (receiver for kotlin) for sub commend " + function.name + " from " + this.getPrimaryName() + " should be ") + throw IllegalParameterException("First parameter (receiver for kotlin) for sub commend " + function.name + " from " + this.primaryName + " should be ") } if (notStatic) { From 657a8ab99353bdbf971e70d53a47e369d9e39d69 Mon Sep 17 00:00:00 2001 From: Him188 Date: Thu, 28 May 2020 14:23:26 +0800 Subject: [PATCH 3/6] Update README.md --- README.md | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index db4d71a2c..73fd4616f 100644 --- a/README.md +++ b/README.md @@ -21,18 +21,29 @@ Mirai 是一个在全平台下运行,提供 QQ Android 和 TIM PC 协议支持 console 由后端和前端一起工作. 使用时必须选择一个前端. -**注意:`mirai-console` 后端和 pure 前端正在进行完全的重构,master 分支将不再维护。** -**`mirai-console` 将在短时间内不可用。` +**注意:`mirai-console` 后端和 pure 前端正在进行完全的重构,master 分支将不再维护。** +**`mirai-console` 将在短时间内不可用。** -- `mirai-console`: console 的后端, 包含插件管理, 指令系统, 配置系统. 还包含一个轻量命令行的前端 (因此可以独立启动 `mirai-console`). -- `mirai-console-graphical`: console 的 JavaFX 图形化界面前端. -- `mirai-console-terminal`: console 的 Unix 终端界面前端. (实验性) +后端: +- [`mirai-console`](backend/mirai-console/): console 的后端, 包含插件管理, 指令系统, 配置系统. 没有入口程序. + +前端: +- [`mirai-console-pure`](frontend/mirai-console-pure): console 的轻量命令行前端 +- [`mirai-console-graphical`](frontend/mirai-console-graphical): console 的 JavaFX 图形化界面前端. (实验性) +- [`mirai-console-terminal`](frontend/mirai-console-terminal): console 的 Unix 终端界面前端. (实验性) +- [`MiraiAndroid`](https://github.com/mzdluo123/MiraiAndroid): console 的 Android APP 前端. [`mirai-console-wrapper`](https://github.com/mamoe/mirai-console-wrapper): console 启动器. 可根据用户选择从服务器下载 console 后端, mirai-core, 和指定的前端并启动. ### 使用 +#### Android + +[MiraiAndroid](https://github.com/mzdluo123/MiraiAndroid) 提供在 Android 平台使用 mirai-console 插件的能力,同时拥有一个便于使用的 Lua 接口 + +[项目详细](https://github.com/mzdluo123/MiraiAndroid) + #### Windows 建议任何人都使用一键安装包来快速启动 mirai-console (因此你无需解决 JavaFX 和兼容等相关问题) @@ -46,26 +57,20 @@ console 由后端和前端一起工作. 使用时必须选择一个前端. 若你不愿意简单地启动, 你可以往下阅读复杂的启动方式. -#### Unix +#### Linux / Mac -Unix 没有一键包提供. 请使用 wrapper 启动器. +使用 mirai-console-wrapper 启动器. 1. 安装 JRE (Java 运行环境): - 若使用图形界面, 至少需要 JRE 11 并带有 JavaFX 11, 且不推荐使用 12 或更高版本. - 若使用命令行或终端, 至少需要 JRE 8. - - 可以在 [华为镜像源](https://repo.huaweicloud.com/java/jdk/) 下载 JDK (JDK 包含 JRE 和开发工具) + - 可以在 [华为镜像源](https://repo.huaweicloud.com/java/jdk/) 下载 JDK 安装. (JDK 包含 JRE 和开发工具) 2. 下载 `mirai-console-wrapper-x.x.x.jar` 3. 参照 [wrapper 命令行参数](https://github.com/mirai/mirai-console-wrapper/README.md#命令行参数), 运行 `$ java -jar mirai-console-wrapper-x.x.x.jar` -#### Android - -[MiraiAndroid](https://github.com/mzdluo123/MiraiAndroid) 提供了在Android平台使用mirai-console插件的能力,同时拥有一个便于使用的lua接口 - -你可以点击这里查看[项目详细](https://github.com/mzdluo123/MiraiAndroid) - ### 插件开发与获取 -mirai-console 支持 Jar 插件. +mirai-console 内建 Jar 插件支持. **mirai-console 目前仍为实验性阶段, 任何功能和 API 都不保证稳定性. 任何 API 都可能在没有警告的情况下修改.** From 271e0ba3313f568640d7db2f3646c30d8b873297 Mon Sep 17 00:00:00 2001 From: HelloWorld Date: Sun, 7 Jun 2020 13:46:45 +0800 Subject: [PATCH 4/6] Update README.md --- README.md | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/README.md b/README.md index 73fd4616f..f5b80c862 100644 --- a/README.md +++ b/README.md @@ -46,16 +46,7 @@ console 由后端和前端一起工作. 使用时必须选择一个前端. #### Windows -建议任何人都使用一键安装包来快速启动 mirai-console (因此你无需解决 JavaFX 和兼容等相关问题) -**[下载地址](https://suihou-my.sharepoint.com/:f:/g/personal/user18_5tb_site/ErWGr97FpPVDjkboIDmDAJkBID-23ZMNbTPggGajf1zvGw?e=51NZWM)** - -**请注意** -* 使用时请留意安装包里的说明文字 -* 目前本安装包只支持Windows系统,**且 mirai-console 仍在开发中,可能会存在一些bug** -* 关于安装包本身的一切问题请到 QQ 群内反馈 (推荐), 或 [邮件联系](mailto:support@mamoe.net) -* 如果上面的链接下载过慢,你可以到QQ群内高速下载 - -若你不愿意简单地启动, 你可以往下阅读复杂的启动方式. +同下Linux启动方式 #### Linux / Mac From 31a4d7dc8de5aaec4188fd9af8468c5366865e88 Mon Sep 17 00:00:00 2001 From: Him188 Date: Mon, 8 Jun 2020 13:29:14 +0800 Subject: [PATCH 5/6] Add LXY1226/MiraiOK launcher link --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index f5b80c862..8b788951d 100644 --- a/README.md +++ b/README.md @@ -46,10 +46,14 @@ console 由后端和前端一起工作. 使用时必须选择一个前端. #### Windows +**推荐使用 [LXY1226/MiraiOK](https://github.com/LXY1226/miraiOK) 一键启动器** + 同下Linux启动方式 #### Linux / Mac +**推荐使用 [LXY1226/MiraiOK](https://github.com/LXY1226/miraiOK) 一键启动器** + 使用 mirai-console-wrapper 启动器. 1. 安装 JRE (Java 运行环境): From df8c3687fc41b34f3eec7793b12062204cbaaf70 Mon Sep 17 00:00:00 2001 From: Him188 Date: Tue, 16 Jun 2020 14:04:06 +0800 Subject: [PATCH 6/6] Update README.md --- README.md | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 8b788951d..501837046 100644 --- a/README.md +++ b/README.md @@ -36,25 +36,19 @@ console 由后端和前端一起工作. 使用时必须选择一个前端. [`mirai-console-wrapper`](https://github.com/mamoe/mirai-console-wrapper): console 启动器. 可根据用户选择从服务器下载 console 后端, mirai-core, 和指定的前端并启动. -### 使用 +## 使用 -#### Android +### Android [MiraiAndroid](https://github.com/mzdluo123/MiraiAndroid) 提供在 Android 平台使用 mirai-console 插件的能力,同时拥有一个便于使用的 Lua 接口 [项目详细](https://github.com/mzdluo123/MiraiAndroid) -#### Windows +### Windows / Linux / Mac -**推荐使用 [LXY1226/MiraiOK](https://github.com/LXY1226/miraiOK) 一键启动器** +**推荐任何人都使用全自动的 [LXY1226/MiraiOK](https://github.com/LXY1226/miraiOK) 一键启动器** -同下Linux启动方式 - -#### Linux / Mac - -**推荐使用 [LXY1226/MiraiOK](https://github.com/LXY1226/miraiOK) 一键启动器** - -使用 mirai-console-wrapper 启动器. +也可以使用不推荐的 mirai-console-wrapper 启动器. 1. 安装 JRE (Java 运行环境): - 若使用图形界面, 至少需要 JRE 11 并带有 JavaFX 11, 且不推荐使用 12 或更高版本.