mirai/docs/guide_getting_started.md
2020-04-30 14:43:11 +08:00

4.1 KiB
Raw Blame History

Mirai Guide - Getting Started

由于Mirai项目在快速推进中因此内容时有变动本文档的最后更新日期为2020-04-01,对应版本0.31.4

假如仅仅使用Mirai不需要对整个项目进行Clone只需在项目内添加Gradle Dependency或使用即可。

下面介绍详细的入门步骤。

本页采用Kotlin作为开发语言若你希望使用 Java 开发, 请参阅: mirai-japt

起步步骤

通过编写Kotlin程序以第三方库的形式调用mirai-core并定义你的Mirai Bot行为。

假如已经对Gradle有一定了解可跳过12

1 安装IDEA与JDK

  • JDK 要求6以上

2 新建Gradle项目

*使用gradle项目可能需要代理在IDEA的settings->proxy settings中可以设置

  • File->new project中选择Gradle
  • 在面板中的Additional Libraries and Frameworks中勾选Java以及Kotlin/JVM
  • 点击next,填入GroupIdArtifactId(对于测试项目来说,可随意填写)
  • 点击next,点击Use default gradle wrapper(recommended)
  • 创建项目完成

3 添加依赖

  • 打开项目的Project面板,点击编辑build.gradle

  • 首先添加repositories

    //添加jcenter仓库
    /*
    repositories {
        maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
        mavenCentral()
    }
    原文内容,更新为下文
    */
    
    repositories {
        maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
        mavenCentral()
        jcenter()
    }
    
  • 添加依赖将dependencies部分覆盖。 mirai-core 的最新版本为: Download

    dependencies {
        implementation 'net.mamoe:mirai-core-qqandroid:0.32.0'//此处版本应替换为当前最新
        implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
        testCompile group: 'junit', name: 'junit', version: '4.12'
    }
    
  • 打开右侧Gradle面板点击刷新按钮

  • 至此,依赖添加完成

4 Try Bot

  • 在src/main文件夹下新建文件夹命名为kotlin

  • kotlin下新建包(在kotlin文件夹上右键-New-Package) 包名为net.mamoe.mirai.simpleloader

  • 在包下新建kotlin文件MyLoader.kt

package net.mamoe.mirai.simpleloader

import kotlinx.coroutines.*
import net.mamoe.mirai.Bot
import net.mamoe.mirai.alsoLogin
import net.mamoe.mirai.event.subscribeMessages

suspend fun main() {
    val qqId = 10000L//Bot的QQ号需为Long类型在结尾处添加大写L
    val password = "your_password"//Bot的密码
    val miraiBot = Bot(qqId, password).alsoLogin()//新建Bot并登录
    miraiBot.subscribeMessages {
        "你好" reply "你好!"
        case("at me") {
            reply(sender.at() + " 给爷爬 ")
        }

        (contains("舔") or contains("刘老板")) {
            "刘老板太强了".reply()
        }
    }
    miraiBot.join() // 等待 Bot 离线, 避免主线程退出
}
  • 单击编辑器内第8行(suspend fun main)左侧的run按钮(绿色三角)等待MiraiBot成功登录。
  • 本例的功能中在任意群内任意成员发送包含“舔”字或“刘老板”字样的消息MiraiBot会回复“刘老板太强了”

至此简单的入门已经结束下面可根据不同的需求参阅wiki进行功能的添加。

下面,可以尝试对不同事件进行监听Mirai Guide - Subscribe Events

此外还可以使用Maven作为包管理工具

本项目推荐使用gradle因此不提供详细入门指导

<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>0.23.0</version> <!-- 替换版本为最新版本 -->
    </dependency>
</dependencies>