SpringBoot项目集成mapstruct实战经验分享

1,093 阅读1分钟

项目情况:

SpringBoot2.7.10

lombok1.18.4

maven-compiler-plugin3.6.1

idea集成开发环境

目标:集成mapstruct

以前项目有集成过mapstruct, 没有直接参加原来的项目,本次选择了到官网去看看。

按照官网建议,将maven-compiler-plugin调整为3.8.1,同时配置plugin, 发现不可以,项目中的lombok没有生效,缺少getter/setter导致项目无法编译。

经过参考原来的项目,做了各种尝试包括增加在plugin中配置lombok-mapstruct-binding,还是无效。

浪费了2-3个小时。。。

最终成功了。梳理了一下,有这些操作:

1.确保idea集成开发环境中安装了Lombok213.7172.25, MapStructSupport1.6.0

2.在项目的根pom或单模块项目pom中配置plugin

maven-compiler-plugin3.8.1

lombok1.18.28

mapstruct-processor1.5.5.Final

image.png

3.在项目pom中添加mapstruct依赖

mapstruct1.5.5.Final

image.png

4.使用mapstruct

image.png