2020-12-19 11:15:57 +08:00
|
|
|
|
# Mirai - Configuring Projects
|
|
|
|
|
|
2021-01-11 21:11:33 +08:00
|
|
|
|
本文介绍如何在一个 JVM 项目中使用 mirai。
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
2021-04-19 19:13:24 +08:00
|
|
|
|
具体项目可参考 [mirai-hello-world](https://github.com/project-mirai/mirai-hello-world)。
|
|
|
|
|
|
2020-12-24 17:02:33 +08:00
|
|
|
|
### 选择版本
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
2021-04-11 22:35:03 +08:00
|
|
|
|
有关各类版本的区别,参考 [版本规范](Evolution.md#版本规范)。通常建议选择最新稳定版本。
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
2021-09-22 04:41:31 +08:00
|
|
|
|
[Maven Central Version]: https://img.shields.io/maven-central/v/net.mamoe/mirai-core-api.svg?label=Maven%20Central
|
|
|
|
|
[Maven Central]: https://search.maven.org/search?q=net.mamoe%20mirai
|
|
|
|
|
[GitHub Releases]: https://github.com/mamoe/mirai/releases/latest
|
2021-09-28 09:00:14 +08:00
|
|
|
|
[GR all]: https://github.com/mamoe/mirai/releases/
|
2021-09-22 04:41:31 +08:00
|
|
|
|
|
2021-09-28 09:00:14 +08:00
|
|
|
|
| 版本类型 | 版本号链接 |
|
2021-09-24 00:00:42 +08:00
|
|
|
|
|:------:|:-----------------------------------:|
|
|
|
|
|
| 稳定 | [GitHub Releases] |
|
2021-09-28 09:00:14 +08:00
|
|
|
|
| 预览 | [GitHub Releases][GR all] |
|
2021-09-24 00:00:42 +08:00
|
|
|
|
| 开发 | [UsingSnapshots](UsingSnapshots.md) |
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
2020-12-24 17:02:33 +08:00
|
|
|
|
### 配置项目
|
|
|
|
|
|
2021-01-24 15:33:19 +08:00
|
|
|
|
本文提供如下三种配置方法。推荐使用 Gradle 构建。
|
2020-12-24 17:02:33 +08:00
|
|
|
|
|
2021-09-28 09:00:14 +08:00
|
|
|
|
**注意,下文版本号可能过旧,请自行参照上述表格更新版本号**
|
|
|
|
|
|
2020-12-24 17:02:33 +08:00
|
|
|
|
- [A. 使用 Gradle](#a-使用-gradle)
|
|
|
|
|
- [B. 使用 Maven](#b-使用-maven)
|
2021-01-19 00:28:22 +08:00
|
|
|
|
- [C. 下载 JAR 包](#c-下载-jar-包)
|
2020-12-24 17:02:33 +08:00
|
|
|
|
|
|
|
|
|
|
2020-12-19 11:15:57 +08:00
|
|
|
|
## A. 使用 Gradle
|
|
|
|
|
|
|
|
|
|
### Gradle Kotlin DSL
|
|
|
|
|
|
|
|
|
|
在 `build.gradle.kts` 添加:
|
|
|
|
|
|
|
|
|
|
```kotlin
|
|
|
|
|
plugins {
|
2021-08-25 16:05:22 +08:00
|
|
|
|
kotlin("jvm") version "1.5.10" // 确保添加 Kotlin
|
2020-12-19 11:15:57 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dependencies {
|
2021-08-25 16:05:22 +08:00
|
|
|
|
api("net.mamoe", "mirai-core", "2.7.0")
|
2020-12-19 11:15:57 +08:00
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
2021-01-13 16:07:02 +08:00
|
|
|
|
**注意,必须添加 Kotlin 插件才能正确获取 mirai 软件包。**
|
|
|
|
|
|
|
|
|
|
> 依赖配置完成,请选择:
|
|
|
|
|
> - [分离 API 和实现(可选)](#分离-api-和实现可选)
|
|
|
|
|
> - [回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
|
|
|
|
### Gradle Groovy DSL
|
|
|
|
|
|
|
|
|
|
在 `build.gradle` 添加
|
|
|
|
|
|
|
|
|
|
```groovy
|
|
|
|
|
plugins {
|
2021-08-25 16:05:22 +08:00
|
|
|
|
id 'org.jetbrains.kotlin.jvm' version '1.5.10' // 确保添加 Kotlin
|
2020-12-19 11:15:57 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dependencies {
|
2021-08-25 16:05:22 +08:00
|
|
|
|
implementation 'net.mamoe:mirai-core:2.7.0'
|
2020-12-19 11:15:57 +08:00
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
2021-01-13 16:07:02 +08:00
|
|
|
|
> 依赖配置完成,请选择:
|
|
|
|
|
> - [分离 API 和实现(可选)](#分离-api-和实现可选)
|
|
|
|
|
> - [回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)
|
|
|
|
|
|
2021-01-11 21:11:33 +08:00
|
|
|
|
### 分离 API 和实现(可选)
|
|
|
|
|
|
2021-01-13 16:07:02 +08:00
|
|
|
|
mirai 在开发时需要 `net.mamoe:mirai-core-api`, 在运行时需要 `net.mamoe:mirai-core`。可以在开发和编译时只依赖 `mirai-core-api`,会减轻对 IDE 的负担。
|
2021-01-11 21:11:33 +08:00
|
|
|
|
```kotlin
|
|
|
|
|
dependencies {
|
2021-08-25 16:05:22 +08:00
|
|
|
|
val miraiVersion = "2.7.0"
|
2021-01-11 21:11:33 +08:00
|
|
|
|
api("net.mamoe", "mirai-core-api", miraiVersion) // 编译代码使用
|
|
|
|
|
runtimeOnly("net.mamoe", "mirai-core", miraiVersion) // 运行时使用
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
|
|
|
|
## B. 使用 Maven
|
|
|
|
|
|
2021-02-24 10:52:18 +08:00
|
|
|
|
在 `pom.xml` 中添加 mirai 依赖:
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
|
|
|
|
```xml
|
|
|
|
|
<dependencies>
|
|
|
|
|
<dependency>
|
|
|
|
|
<groupId>net.mamoe</groupId>
|
2021-01-26 11:36:47 +08:00
|
|
|
|
<artifactId>mirai-core-jvm</artifactId>
|
2021-09-28 09:00:14 +08:00
|
|
|
|
<version>2.7.0</version>
|
2020-12-19 11:15:57 +08:00
|
|
|
|
</dependency>
|
|
|
|
|
</dependencies>
|
|
|
|
|
```
|
|
|
|
|
|
2021-01-26 11:36:47 +08:00
|
|
|
|
> 注意在 Maven,artifactId 要使用带 `-jvm` 后缀的
|
2021-01-24 15:06:54 +08:00
|
|
|
|
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
2021-08-25 16:05:22 +08:00
|
|
|
|
通常 mirai 可以直接使用。但 mirai 使用的 Kotlin 1.5 可能与你的项目使用的其他库依赖的 Kotlin 版本冲突,Maven 有时候无法正确处理这种冲突。此时请手动添加 Kotlin 标准库依赖。
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
|
|
|
|
```xml
|
|
|
|
|
<properties>
|
2021-08-25 16:05:22 +08:00
|
|
|
|
<kotlin.version>1.5.10</kotlin.version>
|
2020-12-19 11:15:57 +08:00
|
|
|
|
</properties>
|
|
|
|
|
```
|
|
|
|
|
```xml
|
|
|
|
|
<dependencies>
|
|
|
|
|
<dependency>
|
|
|
|
|
<groupId>org.jetbrains.kotlin</groupId>
|
|
|
|
|
<artifactId>kotlin-stdlib-jdk8</artifactId>
|
|
|
|
|
<version>${kotlin.version}</version>
|
|
|
|
|
</dependency>
|
|
|
|
|
</dependencies>
|
|
|
|
|
```
|
|
|
|
|
|
2021-05-06 23:43:09 +08:00
|
|
|
|
> 可以在 [Kotlin 官方文档](https://www.kotlincn.net/docs/reference/using-maven.html) 获取更多有关配置 Kotlin 的信息。
|
2020-12-19 11:15:57 +08:00
|
|
|
|
|
2021-01-13 16:07:02 +08:00
|
|
|
|
|
|
|
|
|
> 依赖配置完成,[回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)
|
|
|
|
|
|
2020-12-31 15:59:59 +08:00
|
|
|
|
## C. 下载 JAR 包
|
2020-12-24 17:02:33 +08:00
|
|
|
|
|
|
|
|
|
非常不推荐这种方法,请尽可能使用构建工具。
|
|
|
|
|
|
2021-05-25 12:13:43 +08:00
|
|
|
|
在 [Maven Central](https://repo.maven.apache.org/maven2/net/mamoe/mirai-core-all/) 或 [阿里云代理仓库](https://maven.aliyun.com/repository/public/net/mamoe/mirai-core-all/) 下载指定版本的 `-all.jar` 文件,即包含 `mirai-core`,`mirai-core-api`,`mirai-core-utils` 和其他依赖。
|
2021-01-13 16:07:02 +08:00
|
|
|
|
|
2021-01-19 00:28:22 +08:00
|
|
|
|
> [回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)
|