MiraiForum

    • 注册
    • 登录
    • 搜索
    • 热门
    • 最新
    • 未解决
    • 标签
    • 群组
    • 友情链接
    1. 主页
    2. 2938137849
    2
    • 资料
    • 关注 0
    • 粉丝 0
    • 主题 2
    • 帖子 4
    • 最佳 0
    • 有争议的 0
    • 群组 0

    2938137849

    @2938137849

    0
    声望
    3
    资料浏览
    4
    帖子
    0
    粉丝
    0
    关注
    注册时间 最后登录

    2938137849 取消关注 关注

    2938137849 发布的最新帖子

    • 利用注解实现添加监听事件以及对事件的处理的增强

      案例地址:https://github.com/2938137849/miraiEventHandle

      前言

      之前用 kt 写插件时候感觉手动 subscribeAlways 注册事件监听写的不是那么的顺手,于是想着能不能注解实现事件监听,翻了一下 开发文档 发现还真有现成的 注解实现事件监听。

      结果实际使用后感觉并不是那么良好,依然需要显示的写出对应的事件,而且只支持方法类型,感觉自由度受到了限制,于是决定自己写一个类似的注解处理机制玩玩。

      简介

      主要代码:miraiEventHandle/my/miraiplus

      为了不跟 mirai 方法冲突保持整洁,所以将所有方法封到了 MiraiEventHandle 类里,使用只需要 private val myEventHandle = MiraiEventHandle(this) 即可。

      如何使用

      完整案例代码:miraiEventHandle/my/example

      1. 在插件中加入一个属性:val myEventHandle = MiraiEventHandle(this)
      2. (可选)在插件的 PluginComponentStorage.onLoad() 方法中注册注解处理类
      3. 在插件的 onEnable() 方法中注册任意对象,会自动将对象内所有被 EventHandle 注解的成员注册监听。对于字段类型是取值,对于属性类型是调用getter,对于方法是调用方法。

      若想使用的话直接 CV 大法即可,毕竟初衷只是为了注册监听顺手一点,然后抽取一些重复性的代码做成增强,顺便做了一下参数获取之类的东西

      发布在 技术交流板块
      2
      2938137849
    • RE: 关于mirai-console打包插件的问题

      已寻找到解决方案
      在gradle.kts中添加shadowjar配置:

      mirai {
      	configureShadow {
      		dependencies {
      			include(dependency("io.ktor:ktor-client-serialization-jvm:1.6.7"))
      			include(dependency("io.ktor:ktor-client-json:1.6.7"))
      		}
      	}
      }
      
      发布在 开发交流
      2
      2938137849
    • RE: 关于mirai-console打包插件的问题

      请问如何解决

      发布在 开发交流
      2
      2938137849
    • 关于mirai-console打包插件的问题

      目前使用打包插件时会自动引入 ktor 包,但是只有基础的几个包.
      当我想要引入其他的 ktor 相关的包时使用 buildplugin 会打包不到 jar 文件中去.
      比如这两个

      //	implementation("io.ktor:ktor-client-serialization-jvm:1.6.7")
      //	implementation("io.ktor:ktor-client-json:1.6.7")
      
      发布在 开发交流
      2
      2938137849