У меня есть объект со свойством, которое я писал так
частная длинная реанимация;
Я использую mapstruct:
Вот мой картограф для указанной сущности:
@Mapper(componentModel = "spring")
public interface ProtectionQueryMapper extends EntityMapper<ProtectionQueryDto, Protection> {
ProtectionQueryDto toDto(Protection protection);
Protection toEntity(ProtectionQueryDto protectionQueryDto);
List<Protection> toEntity(List<ProtectionQueryDto> protectionQueryDtos);
List<ProtectionQueryDto> toDto(List<Protection> protections);
}
public interface EntityMapper<D, E> {
E toEntity(D dto);
D toDto(E entity);
List<E> toEntity(List<D> dtoList);
List<D> toDto(List<E> entityList);
}
У меня проблема в том, что я хочу изменить свойство с ICU go icu, что я и сделал, и это привело к этой ошибке:
вложенным исключением является java.lang.NoSuchMethodError:
Protection.getICU () Ljava / языки / Long;
Казалось бы, mapstruct генерирует свои методы получения и установки на основе:
private Long ICU;
метод генерации, такой как setICU и getICU.
Но теперь, когда я изменил свойство с ICU на icu, mapstruct не обновляет свой метод до setIcu
и getIcu
.
Я не могу изменить сгенерированный файл mapstruct
вручную.
Также вот мой pom.xml (по крайней мере, часть, касающаяся mapstruct)
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct</artifactId>
<version>1.3.0.Final</version>
</dependency>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<annotationProcessorPaths>
<path>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.3.0.Final</version>
</path>
</annotationProcessorPaths>
<compilerArgs>
<compilerArg>
<arg>-Amapstruct.defaultComponentModel=spring</arg>
</compilerArg>
</compilerArgs>
</configuration>
</plugin>
Есть идеи, как заставить mapstruct обновить сгенерированный исходный файл?