java: The type of parameter "XXX" has no property named "name".
java: The type of parameter "XXX" has no property named "name".
1、问题现象
SpringBoot 工程启动的时候,报错如下:
java: The type of parameter "DeviceVO" has no property named "name".
实际 DeviceVO.java 中有 name 字段。
2、问题原因
Lombok 中的 setter、getter 方法,在 MapStruct 中没有找到。
3、解决方案
pom.xml 中 Lombok 依赖顺序写在 MapStruct 前面。
如下:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct</artifactId>
<version>1.4.2.Final</version>
</dependency>
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.4.2.Final</version>
<scope>compile</scope>
</dependency>