我们正在使用mapstruct映射对象。在一种情况下,我们使用@Mapping注释定义了映射,如下所示:
@Mapping(源=“ glSetCode”,目标=“ setCode”)
,结果类型中出现错误Unknown属性“ setCode”。
您是说“空”吗?
setCode字段存在于目标对象中。以相同的方式映射其他字段不会引发错误。
我们还使用了lombok,并且我们的pom.xml中都有两个注释处理器
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<groupId>org.apache.maven.plugins</groupId>
<version>3.8.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<testSource>1.8</testSource>
<testTarget>1.8</testTarget>
<annotationProcessorPaths>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>${org.mapstruct.version}</version>
</path>
<path>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jpamodelgen</artifactId>
<version>${hibernate.version}</version>
</path>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
请尝试将setCode更改为其他内容,然后它可以工作。但想知道失败的原因,因为必须在多个映射器/区域中更新更改的字段名称。