mirai/docs/QA.md
2020-09-03 19:23:32 +08:00

1.3 KiB
Raw Blame History

Q&A

插件

使用 ServiceLoader 加载插件

  • 方法 A. (推荐) 自动创建 service 文件 (使用 Google auto-service)
    build.gradle.kts 添加:

    plugins {
      kotlin("kapt")
    }
    dependencies {
      val autoService = "1.0-rc7"
      kapt("com.google.auto.service", "auto-service", autoService)
      compileOnly("com.google.auto.service", "auto-service-annotations", autoService)
    }
    

    对于 build.gradle 用户, 请自行按照 Groovy DSL 语法翻译

  • 方法 B. 手动创建 service 文件
    jarMETA-INF/services/net.mamoe.mirai.console.plugin.jvm.JvmPlugin 文件内存放插件主类全名.

注意:

为什么不支持热加载和卸载插件?

在热加载过程容易产生冲突情况;
卸载时不容易完全卸载所有静态对象。

为了避免这些麻烦Mirai Console 认为没有支持热加载和热卸载的必要。