Skip to content

Commit 52282f8

Browse files
committed
refactor: update document for devtools
1 parent 48c094d commit 52282f8

File tree

2 files changed

+52
-12
lines changed
  • docs/developer-guide/plugin/basics
  • versioned_docs/version-2.20/developer-guide/plugin/basics

2 files changed

+52
-12
lines changed

docs/developer-guide/plugin/basics/devtools.md

+24-4
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,12 @@ Devtools 是使用 Java 开发的一个 [Gradle](https://gradle.org/) 插件,
1616
```groovy
1717
plugins {
1818
// ...
19-
id "run.halo.plugin.devtools" version "0.3.0"
19+
id "run.halo.plugin.devtools" version "0.4.0"
2020
}
2121
```
2222

23+
Release 版本和版本说明可以在 [GitHub Releases](https://github.com/halo-sigs/halo-gradle-plugin/releases) 上查看。
24+
2325
## 使用说明
2426

2527
当在项目中引入了 `devtools` 之后,就可以使用一些额外的构建任务来辅助插件的开发,参考 [构建任务详解](#任务)
@@ -117,8 +119,8 @@ halo {
117119
```yaml
118120
# workplace/config/application.yaml
119121
logging:
120-
level:
121-
run.halo.app: DEBUG
122+
level:
123+
run.halo.app: DEBUG
122124
```
123125
124126
更多配置项请参考 [Halo 配置列表](../../../getting-started/install/config.md#配置列表)。
@@ -192,12 +194,24 @@ haloPlugin {
192194
consoleSource {
193195
// 监听 console/src/ 目录下的文件变化
194196
files files('console/src/')
197+
// exclude '**/node_modules/**'
198+
// exclude '**/.idea/**'
199+
// exclude '**/.git/**'
200+
// exclude '**/.gradle/**'
201+
// exclude 'src/main/resources/console/**'
202+
// exclude 'build/**'
203+
// exclude 'gradle/**'
204+
// exclude 'dist/**'
205+
// exclude 'test/java/**'
206+
// exclude 'test/resources/**'
195207
}
196208
// ... 可以添加多个
197209
}
198210
}
199211
```
200212

213+
`exclude` 接收字符串用于排除不需要监听的文件或目录,可以使用 `**` 通配符。注释掉的是每个 `watchDomains` 都会默认排除的规则。
214+
201215
### 生成 API client
202216

203217
#### 什么是 API client
@@ -284,6 +298,10 @@ haloPlugin {
284298
}
285299
```
286300

301+
当配置了 `openApi` 规则之后,`haloServer``watch` 启动可以通过 `http://localhost:8090/swagger-ui.html` 访问 API 文档,
302+
并通过选择你配置的 `displayName` 分组来**检查你的规则是否正确**
303+
这一步检查有助于避免生成 API Client 为空或者生成 `roleTemplates.yaml` 为空的情况。
304+
287305
##### 执行 `generateApiClient`
288306

289307
在项目目录中执行以下命令即可生成 API 客户端代码到指定目录:
@@ -345,6 +363,8 @@ const { data } = await momentsConsoleApiClient.moment.listTags({
345363

346364
:::warning
347365
执行 `generateApiClient` 任务时会先删除 `openApi.generator.outputDir` 下的所有文件,因此建议将 API client 的输出目录设置为一个独立的目录,以避免误删其他文件。
366+
367+
执行 `generateApiClient` 前建议注释掉你所配置的 `build` 任务对应的 `dependsOn` 任务,以避免因依赖前端构建任务可能无法生成 API Client 的问题。
348368
:::
349369

350370
### generateRoleTemplates 任务
@@ -413,7 +433,7 @@ halo {
413433

414434
## 迁移
415435

416-
### 从旧版本升级到 0.2.x 版本
436+
### 从旧版本升级到 0.2.x 及以上版本
417437

418438
如果 `run.halo.plugin.devtools` 从旧版本升级到 `0.2.0` 版本,需要先将 Gradle 版本升级到 `8.3` 以上,你可以通过以下命令升级 Gradle 版本:
419439

versioned_docs/version-2.20/developer-guide/plugin/basics/devtools.md

+28-8
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,12 @@ Devtools 是使用 Java 开发的一个 [Gradle](https://gradle.org/) 插件,
1616
```groovy
1717
plugins {
1818
// ...
19-
id "run.halo.plugin.devtools" version "0.3.0"
19+
id "run.halo.plugin.devtools" version "0.4.0"
2020
}
2121
```
2222

23+
Release 版本和版本说明可以在 [GitHub Releases](https://github.com/halo-sigs/halo-gradle-plugin/releases) 上查看。
24+
2325
## 使用说明
2426

2527
当在项目中引入了 `devtools` 之后,就可以使用一些额外的构建任务来辅助插件的开发,参考 [构建任务详解](#任务)
@@ -34,11 +36,11 @@ plugins {
3436

3537
```shell
3638
=======================================================================
37-
> Halo 启动成功!
38-
访问地址:http://localhost:8090/console?language=zh-CN
39-
用户名:admin
40-
密码:admin
41-
API 文档:http://localhost:8090/swagger-ui.html
39+
> Halo 启动成功!
40+
访问地址:http://localhost:8090/console?language=zh-CN
41+
用户名:admin
42+
密码:admin
43+
API 文档:http://localhost:8090/swagger-ui.html
4244
插件开发文档:https://docs.halo.run/developer-guide/plugin/introduction
4345
=======================================================================
4446
```
@@ -192,12 +194,24 @@ haloPlugin {
192194
consoleSource {
193195
// 监听 console/src/ 目录下的文件变化
194196
files files('console/src/')
197+
// exclude '**/node_modules/**'
198+
// exclude '**/.idea/**'
199+
// exclude '**/.git/**'
200+
// exclude '**/.gradle/**'
201+
// exclude 'src/main/resources/console/**'
202+
// exclude 'build/**'
203+
// exclude 'gradle/**'
204+
// exclude 'dist/**'
205+
// exclude 'test/java/**'
206+
// exclude 'test/resources/**'
195207
}
196208
// ... 可以添加多个
197209
}
198210
}
199211
```
200212

213+
`exclude` 接收字符串用于排除不需要监听的文件或目录,可以使用 `**` 通配符。注释掉的是每个 `watchDomains` 都会默认排除的规则。
214+
201215
### 生成 API client
202216

203217
#### 什么是 API client
@@ -284,6 +298,10 @@ haloPlugin {
284298
}
285299
```
286300

301+
当配置了 `openApi` 规则之后,`haloServer``watch` 启动可以通过 `http://localhost:8090/swagger-ui.html` 访问 API 文档,
302+
并通过选择你配置的 `displayName` 分组来**检查你的规则是否正确**
303+
这一步检查有助于避免生成 API Client 为空或者生成 `roleTemplates.yaml` 为空的情况。
304+
287305
##### 执行 `generateApiClient`
288306

289307
在项目目录中执行以下命令即可生成 API 客户端代码到指定目录:
@@ -345,6 +363,8 @@ const { data } = await momentsConsoleApiClient.moment.listTags({
345363

346364
:::warning
347365
执行 `generateApiClient` 任务时会先删除 `openApi.generator.outputDir` 下的所有文件,因此建议将 API client 的输出目录设置为一个独立的目录,以避免误删其他文件。
366+
367+
执行 `generateApiClient` 前建议注释掉你所配置的 `build` 任务对应的 `dependsOn` 任务,以避免因依赖前端构建任务可能无法生成 API Client 的问题。
348368
:::
349369

350370
### generateRoleTemplates 任务
@@ -413,13 +433,13 @@ halo {
413433

414434
## 迁移
415435

416-
### 从旧版本升级到 0.2.x 版本
436+
### 从旧版本升级到 0.2.x 及以上版本
417437

418438
如果 `run.halo.plugin.devtools` 从旧版本升级到 `0.2.0` 版本,需要先将 Gradle 版本升级到 `8.3` 以上,你可以通过以下命令升级 Gradle 版本:
419439

420440
在插件项目根目录下执行:
421441

422442
```shell
423443
# 如将 Gradle 版本升级至 8.9
424-
./gradlew wrapper --gradle-version=8.9
444+
./gradlew wrapper --gradle-version=8.9
425445
```

0 commit comments

Comments
 (0)