为了避免Java这样的蛋疼情况 我去学了Kotlin
StarGods 发布的最佳帖子
StarGods 发布的最新帖子
-
RE: 使用mcl登录如何获取Bot对象?
GlobalEventChannel.subscribeAlways<BotOnlineEvent> { event ->
val groups = event.bot.groups
} -
JAVA开发Mirai Console 插件的一些代码和问题
本人java 初学者 不会kotlin
这几天想用Java尝试写一个插件玩玩
发现Mirai Console 对JAVA 不太友好。碰到了一些问题 开贴 备忘
关于注册指令,开启config data 的自动保存功能的代码
目前只是能跑起来的
//在插件启用与注销事件中 分别注册 Data 的自动保存 Config 的自动保存 指令的注册 与注销注册 reloadPluginData(Data.INSTANCE); // 读取文件等 reloadPluginConfig(Config.INSTANCE);//读取配置 CommandManager.INSTANCE.registerCommand(MyCommands.INSTANCE, true);//注册指令 CommandManager.INSTANCE.unregisterCommand(MyCommands.INSTANCE);//注销指令注册
//指令实现部分代码
public static final MyCommandTwo INSTANCE = new MyCommandTwo(); public MyCommandTwo() { super(Test.INSTANCE, "x", new String[]{"ss"}, Test.INSTANCE.getParentPermission()); setDescription("这是一个测试指令"); } @Handler public void onCommand(String client_id, String client_secret) { System.out.println(client_id); Config.INSTANCE.setApiKey(client_id); Config.INSTANCE.setApiSecret(client_secret); }
//data 的部分代码
public class DataTwo extends JAutoSavePluginData { public DataTwo() { super("DataTwo"); } public static final DataTwo INSTANCE = new DataTwo(); public final Value<String> string = value("test"); // 默认值 "test" public final Value<List<String>> list = typedValue(createKType(List.class, createKType(String.class))); // 无默认值, 自动创建空 List public final Value<Map<Long, Object>> custom = typedValue( createKType(Map.class, createKType(Long.class), createKType(Object.class)), new HashMap<Long, Object>() {{ // 带默认值 put(123L, "ok"); }} ); }
我在用java 实现 JAutoSavePluginConfig 部分代码时 却碰到了问题 无法解决 故 没能成功,还请各位 指点下
-
RE: Mirai Native的CQL.dll无法加载,报错
一些特殊的插件 需要在 java/bin 目录里再新建一个bin 目录 (可以理解为酷Q根目录下的bin)用于存放一些非dll支持库 如酷Q的语音组件