Ich versuche, MapStruct zu verwenden, um Attribute einer Klasse zuzuordnen, und unter diesen Attributen befindet sich eine OffetDateTime-Variable, die ich auf die aktuelle Zeit setzen muss. Wenn die MapperImpl-Klasse jedoch generiert wird, kann sie die Klassen OffsetDateTime und ZoneOffset nicht erkennen. Also zum Beispiel
Code: Select all
public class MapThisClass {
private OffsetDateTime time;
// other attributes
}
Ich versuche (im Mapping) die Zeit auf die aktuelle OffsetTime wie folgt festzulegen:
Code: Select all
public class MapThisClassMapper {
//. Map other attributes
Mapping(target = “time”, expression = "java(OffsetDateTime.now(ZoneOffset.UTC))")
public abstract MapThisClass cloneMapThisClass(MapThisClass mapThisObject, Clazz someOtherClassToMapFrom);
}
Wenn ich versuche zu erstellen, erhalte ich die folgende Fehlermeldung.
Code: Select all
ERROR] MapThisMapperImpl.java:[233,61] cannot find symbol
[ERROR] symbol: variable ZoneOffset
[ERROR] location: class MapThisMapperImpl
[ERROR] MapThisMapperImpl.java:[233,42] cannot find symbol
[ERROR] symbol: variable OffsetDateTime
[ERROR] location: class MapThisMapperImpl
Ich bin neu bei MapStruct. Gibt es eine Möglichkeit für mich sicherzustellen, dass die MapperImpl-Klasse die Klassen OffsetDateTime und ZoneOffset erkennt (automatisch importiert)? Oder gibt es vielleicht eine andere Möglichkeit, dies zu tun, und ich muss dies anders angehen?
Jede Einsicht/Hilfe wäre sehr dankbar.
Danke!