iTXTech/mirai-js

插件加载抛出异常 Function importClass must be called with a class

Taifendesune opened this issue · 5 comments

环境:

  • mirai-console: 2.8.0-M1
  • mirai-console-terminal: 2.8.0-M1
  • mirai-core-all: 2.8.0-M1
  • mirai-js: 2.0-RC-dev1

代码为示例代码:

importClass(net.mamoe.mirai.event.GlobalEventChannel);
importClass(net.mamoe.mirai.event.events.BotOnlineEvent);
importPackage(net.mamoe.mirai)

let bot = null;
let listener = GlobalEventChannel.INSTANCE.subscribeAlways(BotOnlineEvent, (event) => {
    logger.info("Bot " + event.getBot() + " is now online!");
    bot = event.getBot();
});

异常信息:
image

2021-10-17 01:50:59 E/org.itxtech.miraijs.MiraiJs: Error while loading studychat.zip: org.mozilla.javascript.EvaluatorException: Function importClass must be called with a class; had "[JavaPackage com.stardust.autojs.core.http.MutableOkHttp]" instead. (importOkHttpLib#12)

代码改为以下内容报同样错误:

// importClass(net.mamoe.mirai.event.GlobalEventChannel);
// importClass(net.mamoe.mirai.event.events.BotOnlineEvent);
// importPackage(net.mamoe.mirai)

let bot = null;
let listener = net.mamoe.mirai.event.GlobalEventChannel.INSTANCE.subscribeAlways(
  mirai.event.events.BotOnlineEvent,
  (event) => {
    logger.info("Bot " + event.getBot() + " is now online!");
    bot = event.getBot();
  }
);

以上为 main.js 中代码

运行环境?

运行环境?
系统:
CentOS Linux release 7.3.1611 (Core)
Java:
openjdk 11.0.12 2021-07-20
OpenJDK Runtime Environment Temurin-11.0.12+7 (build 11.0.12+7)
OpenJDK 64-Bit Server VM Temurin-11.0.12+7 (build 11.0.12+7, mixed mode)

遇到了同样的问题

经发现使用 mcl 启动时脚本环境无法找到 net.mamoe.mirai 包,请使用原始方式启动:

java -cp "./libs/*" net.mamoe.mirai.console.terminal.MiraiConsoleTerminalLoader