mirai/docs/guide_getting_started.md

130 lines
3.9 KiB
Markdown
Raw Normal View History

2020-02-20 13:31:00 +08:00
# Mirai Guide - Getting Started
2020-02-20 13:28:44 +08:00
2020-02-20 20:58:40 +08:00
由于Mirai项目在快速推进中因此内容时有变动本文档的最后更新日期为```2020-02-20```,对应版本```0.17.0```
2020-02-20 13:28:44 +08:00
假如仅仅使用Mirai不需要对整个项目进行Clone只需在项目内添加Gradle Dependency或使用即可。
下面介绍详细的入门步骤。
2020-02-20 20:58:40 +08:00
本页采用Kotlin作为开发语言**若你希望使用 Java 开发**, 请参阅: [mirai-japt](mirai-japt/README.md)
## Use Console
2020-02-20 13:28:44 +08:00
使用mirai-console以插件形式对服务器功能进行管理启动无需任何IDE。
2020-02-20 13:32:35 +08:00
**由于mirai-console还没有开发完成暂时不提供入门**
2020-02-20 13:28:44 +08:00
2020-02-20 20:58:40 +08:00
## Use Loader
2020-02-20 13:28:44 +08:00
通过编写Kotlin程序启动mirai-core并定义你的Mirai Bot行为。
假如已经对Gradle有一定了解可跳过12
### 1 安装IDEA与JDK
2020-02-20 21:04:18 +08:00
JDK要求6以上
2020-02-20 13:28:44 +08:00
### 2 新建Gradle项目
- 在```File->new project```中选择```Gradle```
- 在面板中的```Additional Libraries and Frameworks```中勾选```Java```以及```Kotlin/JVM```
- 点击```next```,填入```GroupId```与```ArtifactId```(对于测试项目来说,可随意填写)
- 点击```next```,点击```Use default gradle wrapper(recommended)```
- 创建项目完成
### 3 添加依赖
- 打开项目的```Project```面板,点击编辑```build.gradle```
- 首先添加repositories
2020-02-20 16:40:40 +08:00
```groovy
2020-02-20 13:28:44 +08:00
//添加jcenter仓库
/*
repositories {
mavenCentral()
}
原文内容,更新为下文
*/
repositories {
mavenCentral()
jcenter()
}
```
2020-02-20 21:06:30 +08:00
- 添加依赖将dependencies部分覆盖。 `mirai-core` 的最新版本为: [![Download](https://api.bintray.com/packages/him188moe/mirai/mirai-core/images/download.svg)](https://bintray.com/him188moe/mirai/mirai-core/)
2020-02-20 13:28:44 +08:00
2020-02-20 16:40:40 +08:00
```groovy
2020-02-20 13:28:44 +08:00
dependencies {
2020-02-20 20:58:40 +08:00
implementation 'net.mamoe:mirai-core-qqandroid-jvm:0.17.0'//此处版本应替换为当前最新
2020-02-20 13:28:44 +08:00
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```-```Packages```) 包名为```net.mamoe.mirai.simpleloader```
- 在包下新建kotlin文件```MyLoader.kt```
2020-02-20 16:40:40 +08:00
```kotlin
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的密码
2020-02-20 21:06:30 +08:00
val miraiBot = Bot(qqId, password).alsoLogin()//新建Bot并登录
2020-02-20 16:40:40 +08:00
miraiBot.subscribeMessages {
"你好" reply "你好!"
case("at me") {
reply(sender.at() + " 给爷爬 ")
}
(contains("舔") or contains("刘老板")) {
"刘老板太强了".reply()
}
}
2020-02-20 21:06:30 +08:00
miraiBot.join() // 等待 Bot 离线, 避免主线程退出
2020-02-20 16:40:40 +08:00
}
```
2020-02-20 13:28:44 +08:00
2020-02-20 16:41:17 +08:00
- 单击编辑器内第8行(```suspend fun main```)左侧的run按钮(绿色三角)等待MiraiBot成功登录。
2020-02-20 13:28:44 +08:00
- 本例的功能中在任意群内任意成员发送包含“舔”字或“刘老板”字样的消息MiraiBot会回复“刘老板太强了”
2020-02-20 17:03:52 +08:00
至此简单的入门已经结束下面可根据不同的需求参阅wiki进行功能的添加。
2020-02-20 20:58:40 +08:00
### 此外还可以使用Maven作为包管理工具
本项目推荐使用gradle因此不提供详细入门指导
```xml
<repositories>
<repository>
<id>jcenter</id>
<url>https://jcenter.bintray.com/</url>
</repository>
</repositories>
```
```xml
<dependencies>
<dependency>
<groupId>net.mamoe</groupId>
<artifactId>mirai-core-qqandroid-jvm</artifactId>
<version>0.17.0</version> <!-- 替换版本为最新版本 -->
</dependency>
</dependencies>
2020-02-20 21:04:18 +08:00
```