diff --git a/docs/README.md b/docs/README.md
index 660a9f0..2d1d0ff 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -9,6 +9,8 @@ actions:
- text: 快速开始 💡
link: /introduction/quick-start/
type: primary
+ - text: 常见问题
+ link: /guide/faq
features:
- title: 快速
diff --git a/docs/guide/faq.md b/docs/guide/faq.md
index 8eafb9d..0123fdc 100644
--- a/docs/guide/faq.md
+++ b/docs/guide/faq.md
@@ -6,12 +6,34 @@ category:
description: MapStructPlus MapStructPlus常见问题 faq
---
+## 生成的转换接口与转换类在哪里查看
+
+在编译后的 target/generated-sources 目录下,如果没有该目录,则需要配置 IDEA 展示排除的文件(Show Excluded Files)
+
+## "cannot find converter from xxx to xxx" / 没有生成转换接口
+
+1. 建议按照[快速开始](/introduction/quick-start.html)重新查看一下自己的依赖和配置是否齐全,
+ 如果项目中使用了 Lombok,则按照[指南-常见问题#与Lombok整合](/guide/faq.html)来进行配置;
+2. 重新加载 Maven 依赖(Reload All Maven Projects)
+3. mvn clean compile
+4. 在 /target/generated-sources 目录下,查看是否生成转换接口。
+5. 如果没有生成,联系作者
+6. 如果已经生成,需要确认 SpringBoot 能否扫描到生成接口所在的包!
+
+## 生成的转换接口及实现类的目录规则
+
+默认情况下,会在生成在源类同包名下,可以通过[配置](/guide/configuration.html)来指定具体的目录。
+
+> 需要注意,如果是外部依赖包,也会生成在外部依赖类所在的同名包下,导致 Spring 扫描不到,这种情况下,建议指定具体的目录。
+
## 与 `lombok` 整合
与 Mapstruct 整合 lombok 的方式一致。
### lombok 1.18.16 之前:
+#### Maven
+
```xml
@@ -41,8 +63,19 @@ description: MapStructPlus MapStructPlus常见问题 faq
```
+#### Gradle
+
+```groovy
+dependencies {
+ annotationProcessor group: 'org.projectlombok', name: 'lombok', version: {lombok.version}
+ annotationProcessor group: 'io.github.linpeilie', name: 'mapstruct-plus-processor', version: ${mapstruct-plus.version}
+}
+```
+
### lombok 1.18.16 及以后:
+#### Maven
+
```xml
@@ -77,19 +110,12 @@ description: MapStructPlus MapStructPlus常见问题 faq
```
-## 生成的转换接口与转换类在哪里查看
+#### Gradle
-在编译后的 target/generated-sources 目录下,如果没有该目录,则需要配置 IDEA 展示排除的文件(Show Excluded Files)
-
-## 没有生成转换接口
-
-1. 建议按照[快速开始](/introduction/quick-start.html)重新查看一下自己的依赖和配置是否齐全,
-如果项目中使用了 Lombok,则按照[指南-常见问题#与Lombok整合](/guide/faq.html)来进行配置;
-2. 重新加载 Maven 依赖(Reload All Maven Projects)
-3. mvn clean compile
-
-## 生成的转换接口及实现类的目录规则
-
-默认情况下,会在生成在源类同包名下,可以通过[配置](/guide/configuration.html)来指定具体的目录。
-
-> 需要注意,如果是外部依赖包,也会生成在外部依赖类所在的同名包下,导致 Spring 扫描不到,这种情况下,建议指定具体的目录。
\ No newline at end of file
+```groovy
+dependencies {
+ annotationProcessor group: 'org.projectlombok', name: 'lombok', version: {lombok.version}
+ annotationProcessor group: 'io.github.linpeilie', name: 'mapstruct-plus-processor', version: ${mapstruct-plus.version}
+ annotationProcessor group: 'org.projectlombok', name: 'lombok-mapstruct-binding', version: '0.2.0'
+}
+```
\ No newline at end of file
diff --git a/docs/introduction/quick-start.md b/docs/introduction/quick-start.md
index bf00ffd..d3f6f06 100644
--- a/docs/introduction/quick-start.md
+++ b/docs/introduction/quick-start.md
@@ -42,6 +42,8 @@ public class User {
引入 `mapstruct-plus` 依赖:
+#### Maven
+
```xml
最新版本
@@ -75,6 +77,16 @@ public class User {
```
+#### Gradle
+
+```groovy
+dependencies {
+ implementation group: 'io.github.linpeilie', name: 'mapstruct-plus', version: ${mapstruct-plus.version}
+
+ annotationProcessor group: 'io.github.linpeilie', name: 'mapstruct-plus-processor', version: ${mapstruct-plus.version}
+}
+```
+
### 添加配置类
在 Bean 对象所在模块包中,任意类上增加注解:`@ComponentModelConfig(componentModel = "default")`
@@ -138,6 +150,8 @@ public class QuickStart {
引入 `mapstruct-plus-spring-boot-starter` 依赖:
+#### Maven
+
```xml
最新版本
@@ -171,6 +185,16 @@ public class QuickStart {
```
+#### Gradle
+
+```groovy
+dependencies {
+ implementation group: 'io.github.linpeilie', name: 'mapstruct-plus-spring-boot-starter', version: ${mapstruct-plus.version}
+
+ annotationProcessor group: 'io.github.linpeilie', name: 'mapstruct-plus-processor', version: ${mapstruct-plus.version}
+}
+```
+
### 指定对象映射关系
同非 SpringBoot 环境