Mirai框架qq机器人教程
Mirai框架qq机器人教程
本教程代码部分已经过时,为2.0-M1版!!!
请阅读新版2.0-M2版的教程
或
官方的框架教程 官方启动器教程
0.前言
目前mirai项目官方已经停止维护并且好像删库了? 但是由于其开源性质,有很多clone的库在github上
c++版github地址:点我
kotlin版github地址:点我
c++版教程csdn:点我
温馨提示:请勿使用qq机器人做非法的事情
1. 安装Java
最低1.8,推荐15
推荐下载openjdk而不是甲骨文的,不然mirai-console-loader会报错
自行百度(以后如果有时间回来补教程)
记得配置环境变量
如何检测成功安装: 按Win+R>输入cmd 然后回车-> 输入java -version

2.安装Mirai启动器
mirai目前启动器有2个(详情)
- MiraiOk是一个安装MiraiOK的一键安装包
最新官方及全版本Github下载地址(里面readme.md里面有下载整合包地址)(最近github下载好像提速了,我就不另外传到国内网盘了,如有需要评论区说) - 推荐用mirai-console-loader
本文作者windows版本备份(使用旧框架的miraiok和新框架的mirai-console-loader)
3.下载IDEA或其他编译器
从搜索引擎搜索官网进去下载
或者用其他编辑器也可以
4.创建mirai-console插件项目
该插件可以让你快速生成mirai项目
Step1: 在IDEA中按快捷键ctrl+alt+s或者点击File->Setting
Step2: 找到里面的Plugin
Step3: 在Marketplace里面搜索Mirai和Kotlin 安装

但是,笔者在IDEA 2020.2版本中无法安装插件或新建项目没mirai的项目,如果有这种情况,有3种解决方法
到笔者的库下载生成好的项目,并自己修改信息(旧版的kotlin框架)
感谢网友提醒,这种情况下也可以手动下载插件然后导入插件从而安装
github下载地址用官方提供的例子(新的kotlin框架)
4.1 通过git创建
如果是用github上的项目创建,那就从github上下载,然后用IDE打开整个文件夹就好了
4.2 通过插件创建项目
Step1 就像正常创建项目一样,File->New->Project

Step2 选mirai-console,这里随便填(不知道的尽量不改,推荐语言kotlin,博主搞了半天的java版还是没用)然后next

Step3 两个id随便写,包管理器建议这样配置,然后next

Step4 随意

5.解决代码报错
如图 创建项目好后会呈现这样子

这个时候你们的代码会报错,显示找不到包,这是gradle依赖出问题了
请自行到上方有写的作者储存库里复制build.gradle的内容并忽略以下内容
Step1 打开build.gradle
添加和删除如图,其他不变
implementation(“net.mamoe:mirai-core-qqandroid:1.1.3”)
compile fileTree(dir:’/jars/’,includes: [’*.jar’])

Step2 在根目录下创建jars文件夹,如图

Step3 把miraiok下的content下的第一个.jar文件复制到jars文件夹下,如图


然后就解决了。
6. miraiOK结构

从上往下依次是
开发SDK(也就是依赖库)
jre1.8.0_252 也就是java运行环境
不知道干什么的空文件夹
运行日志
插件目录(gradle生成jar后复制到这)
不知道干什么的空文件,应该是控制版本
不知道干什么的xml文件
配置文件
虚拟设备信息(qq协议用)
一个库
主程序(点击运行机器人)
7.mirai 旧版kotlin代码例子解析

reply即为回复方法,如
"HI" reply("X")
与
if(message.toString()=="HI")reply("X")
一个道理
8.官方开发文档
9. 一个简单的kotlin例子
10. 用gradle生成插件文件(.jar)
Step1 点击侧边栏的gradle

Step2 双击jar任务

Step3 在lib目录下找到.jar文件
Step4 把这个jar文件复制到miraiok的plugins目录下
ps:这个文件夹是运行后生成的

Step5 运行mirai

11.在mirai中已有的一些插件
一些tips
- 在MiraiOK的文件夹下的config.txt可以设置自动登录

- 在plugin.xml可以改项目信息

有什么评论区问,以后再补充
应该没有人和我一样半夜2点写教程吧(笑
此外 可以来找我机器人玩啊(qq号:481784853)
相关群 1044565129
-End-
Mirai框架qq机器人教程的更多相关文章
- Mirai框架qq机器人教程 新版
Mirai框架qq机器人教程 新版 前言 资料列表 1.准备 i. 配置java环境 ii. 配置IDE iii. 下载mirai-console-loader(mcl)作为启动器 2.创建mirai ...
- Python+mirai开发QQ机器人起步教程(2021.9.9测试有效)
参考:开发 mirai QQ机器人起步教程_叹之-CSDN博客_mirai python 本篇文章参考了以上博客,并对其中的失效内容和版本匹配问题进行了补充修改,实测能够成功运行.部分步骤的运行截图见 ...
- 使用 GO-CQHttp或mirai框架 搭建QQ的机器人
我的博客 Go-CQHttp搭建QQ机器人 官方文档在这-->ATRU官方文档 Go-CQHttp + Atri 使用Linux系统部署 需求 服务器一台/带有Linux的机器 Python环境 ...
- Mirai qq机器人 c++版sdk(即用c++写mirai)
Mirai机器人c++版 前言 类似教程 本文git,gitee地址 c++开发mirai 原理 大概流程 实现 如何使用 注意事项 常见错误 前言 改分支版本以及过时,暂时不再维护 请看最新版kot ...
- 体验 QQ机器人C# SDK 1.X 特性总结
主要特性 依赖注入 框架本身采用 Autofac 作为依赖注入框架.进行插件开发时,必然会使用到该框架.建议开发者阅读官方文档熟悉其用法.https://autofac.readthedocs.io/ ...
- 使用C# 开始第一个QQ机器人
本示例将会使用”嘤鹉学舌”这个小插件的实现来演示如何使用Newbe.Mahua实现第一个机器人插件. 插件功能 自动将发送者的消息回发给发送人,嘤鹉(Parrot,其实是说嘤嘤嘤怪)学舌. 开发环境要 ...
- NoneBot+酷Q,打造QQ机器人
NoneBot 是一个基于 酷Q 的 Python 异步 QQ 机器人框架,它会对 QQ 机器人收到的消息进行解析和处理,并以插件化的形式,分发给消息所对应的命令处理器和自然语言处理器,来完成具体的功 ...
- 第一讲 从头开始做一个web qq 机器人,第一步获取smart qq二维码
新手教程: 前言:最近在看了一下很久很久以前做的qq机器人失效了,最近也在换工作目前还在职,时间很挺宽裕的.就决定从新搞一个web qq机器人 PC的协议解析出来有点费时间以后再做. 准备工作: 编译 ...
- python实现qq机器人qqbot
title: python实现qq机器人qqbot tags: python date: 2018-6-1 10:19:00 --- 以下内容为转载 一.介绍 qqbot 是一个用 python 实现 ...
随机推荐
- 上传到github
我是为了自己下次不用再找github上传的地方了,索性就复制了一篇 转载于 https://blog.csdn.net/m0_37725003/article/details/80904824 首先你 ...
- Mac开发必设置的Finder设置项,你设置了吗?
1.显示标签页.显示路径栏.显示状态栏的设置位置,在访达->显示-> 显示状态栏 个人三个都设置了,但是觉得显示状态栏用的并不多,反而多一行,下面是显示状态栏的效果,主要可以一眼看出有多少 ...
- Jenkins Job间传递参数的一种方法
场景: Jenkins 中可以建多个Job,一般是主编译Job,多个子Job. 子Job要用主Job中的版本号,编译号. 1) 在主Job里面添加脚本命令: echo set MainVersion ...
- 半夜删你代码队 Day5冲刺
一.每日站立式会议 1.站立式会议 成员 昨日完成工作 今日计划工作 遇到的困难 陈惠霖 跟进作业 完成注册界面 相关界面设计内容知识不充足 侯晓龙 开始双人合作 开始与数据库结合 无 周楚池 初步完 ...
- 微信小程序template和组件
template主要是展示,主要是在调用的页面中定义.用import方式引入,然后去使用,通常是单独建立一个文件夹 去管理,文件夹有两个文件wxml和wxss,wxml中 可以定义多个template ...
- 【学习笔记】浅析平衡树套线段树 & 带插入区间K小值
常见的树套树 一般来说,在嵌套数据结构中,线段树多被作为外层结构使用. 但线段树毕竟是 静态 的结构,导致了一些不便. 下面是一个难以维护的例子: 带插入区间 \(k\) 小值问题 来源:Luogu ...
- DBeaver连接MySQ报错
遇错情况:第一次使用DBaver连接MySQL遇到以下问题: 报错信息:Public Key Retrieval is not allowed 截图如下: 解决方案步骤: 一.已有连接的情况:F4或者 ...
- ant-design 基础格式
1 格式 <template> <div> <center><h1>这是·注册页面</h1></center> <a-fo ...
- DRF框架笔记
序列化器类的定义格式? 继承serializers.Serializer:字段 = serializers.字段类型(选项参数) 序列化器类的基本使用? 序列化器类(instance=None, da ...
- MySQL数据库死锁分析
背景说明: 公司内部一套自建分布式交易服务平台,在POC稳定性压力测试的时候出现了数据库死锁.(InnoDB引擎)由于保密性,假设是app_test表死锁了. 现象: 发生异常:Deadlock fo ...
