由于在mirai2.12版本更新后不兼容原先使用的MiraiNative-2.0.5cp,我转而采用了Mirai论坛内可兼容而不跨平台的MiraiNative版本,而该版本无法在64位环境下运行。如果你在mirai根目录下或系统路径下有64位jre时,将因环境不兼容而启动失败并产生如下日志:
W/MiraiNative: 当前运行环境 64 可能不与 Mirai Native 兼容,推荐使用 32位 JRE 运行 Mirai Native。
W/MiraiNative: 如果您正在开发或调试其他环境下的 Mirai Native,请忽略此警告。
E/MiraiNative: 找不到 D:\Project\Dice\mirai-dice-windows\data\org.itxtech.mirainative\CQP.dll,写出自带的 CQP.dll。
W/MiraiNative: 图片或语音文件夹创建失败,可能没有使用管理员权限运行。位置:C:\Program Files\Microsoft\jdk-11.0.12.7-hotspot\bin\data\
I/plugin: Successfully loaded plugin MiraiNative v2.0.0-cssxsh
I/plugin: Successfully loaded plugin MCL Addon v2.0.2
I/main: Prepared built-in commands: autoLogin, help, login, logout, permission, status, stop
I/MiraiNative: 正在加载 Mirai Native Bridge D:\Project\Dice\mirai-dice-windows\data\org.itxtech.mirainative\CQP.dll
E/MiraiNative: java.lang.UnsatisfiedLinkError: D:\Project\Dice\mirai-dice-windows\data\org.itxtech.mirainative\CQP.dll: Can’t load IA 32-bit .dll on a AMD 64-bit platform
java.lang.UnsatisfiedLinkError: D:\Project\Dice\mirai-dice-windows\data\org.itxtech.mirainative\CQP.dll: Can’t load IA 32-bit .dll on a AMD 64-bit platform
为了保证以32位启动mirai,我调整了原MiraiDiceWindows脚本中的java检测,使其仅检测根目录下的java子目录。如果你因自动更新mcl等方式触发了以上问题,请使用MiraiDiceWindows一键脚本部署后的更新.cmd
,确保根目录没有64位jre后启动。