Mapstruct使用时报Unknown property xxx in result type xxx. Did you mean null
0.背景
使用mapstruct时出现:
Unknown property "xxx" in result type xxx. Did you mean "null"?
同时,项目中也用到了lombok。
mapstruct版本: 1.4.1.Final
lombok版本: 1.8.22 (继承的Spring2.5.6)
1.解决
1.1 方案1:调整顺序
代码生成器annotationProcessor
标签部分,将lombok放在mapstruct之前。
1.2 方案2:官网叽叽歪歪一堆
官网说Lombok 1.18.16或更高版本要添加lombok-mapstruct-binding的依赖,但是经过方案1我的问题它就解决了。
原文在这里:https://mapstruct.org/faq/
其实文中也提到了先在模块1使用lombok再在模块2使用mapstruct。
<!-- mapStruct-lombok --> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok-mapstruct-binding</artifactId> <version>0.2.0</version> <scope>provided</scope> </dependency>