小言_互联网的博客

Mirai qq机器人ubuntu配置踩坑记录

709人阅读  评论(0)

Mirai qq机器人ubuntu配置踩坑记录

Mirai GitHub 链接 mirai-github

intellij配置

我的是Ultimate 2020.1版本

我创建的是maven项目

一些可能的报错:

Intellij idea 报错:Error : java 不支持发行版本5

创建maven时间过长,IDEA 中修改 maven 镜像源为阿里源方法

添加依赖

<repositories>
    <repository>
        <id>jcenter</id>
        <url>https://jcenter.bintray.com/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>net.mamoe</groupId>
        <artifactId>mirai-core-qqandroid</artifactId>
        <version>1.3.0</version> <!-- 替换版本为最新版本 -->
    </dependency>
</dependencies>

1.3.0版本目前可以使用,官网默认代码的0.23.0会下载失败,记得更新为最新版本

写测试代码

public class Test {
   
    public static void main(String[] args) {
   
        long qq=你的qq号;
        String password="密码";
        final Bot bot = BotFactoryJvm.newBot(qq,password, new BotConfiguration() {
   
            {
   
                fileBasedDeviceInfo("deviceInfo.json");
            }
        });
        bot.login();
    }
}

之后qq会提示扫码验证点击链接扫码验证设备,验证一次以后就不用再验证了。
更多的功能请看github官方文档 mirai-github

运行后可能会出现 “java 不支持发行版本5”的错误,解决方法参考上面链接


登录成功! 之后接收的消息会在命令行中打印出来。

打包jar

为了使程序能够在ubuntu上独立运行,需要打包jar包

File->project structure



点击build artifacts

之后会生成 ‘Project’ \out\artifacts\MiraiMaven3_jar\MiraiMaven3.jar

尝试

java -jar 你的jar包

如果此时的jar还不能直接运行,提供一些可能的报错解决办法

  1. “java.lang.SecurityException: Invalid signature file digest for Manifest main attribute
    删除META-INF目录下的*.SF,*.DSA,*.RSA文件删除
  2. 没有主清单属性
    修改jar包中的META-INF下的MANIFEST.MF文件,如果是在src下直接创建的java文件,在本代码示例中为
    Main-Class: Test

再次测试java -jar x.jar,理论上能正常运行

ubuntu无界面运行

在windows上验证码是用java的图形界面弹出的,ubuntu上mirai会把验证码图片存在机器上,根据它提示的路径找到这个文件,建议使用filezilla等ftp软件查看,filezilla和ftp用法本文不再介绍。如果有别的办法看到图片也行。

成功截图


转载:https://blog.csdn.net/qq_43380015/article/details/108679731
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场