ich einen Compiler-Fehler bekommen:Funktioniert Mapstruct mit JPA-Metamodellklassen?
com/mycompany/hibernate5/Main.java:[10,46] cannot find symbol
symbol: class Customer_
location: package com.mycompany.hibernate5.sakila.domain
com/mycompany/hibernate5/Main.java:[11,46] cannot find symbol
symbol: class Address_
location: package com.mycompany.hibernate5.sakila.domain
2 errors
Allerdings, wenn ich die mapstruct Annotation Prozessor entfernen kompiliert es in Ordnung.
Also ich denke, dass Mapstruct die Klassen scannt, bevor sie generiert wurden? Irgendwelche Lösungen dafür?
Wie Sie den Meta-Modell-Generator hinzugefügt werden? Haben Sie den Metamodellgenerator und MapStruct über 'annotationProcessorPaths' hinzugefügt? – Gunnar
Warum muss der annotationProcessorPath manuell für mapstruct hinzugefügt werden? 'Falls nicht angegeben, wird der Standardklassenpfad zur Erkennung von Annotationsprozessoren verwendet.' Warum greift der Standardklassenpfad nicht wie beim JPA Metamodell auf? –
Beide Ansätze sollten funktionieren: Hinzufügen von Prozessoren zu (optionalen) Projektabhängigkeiten oder Hinzufügen von ihnen über AnnotationProcessorPaths. Ich würde das letztere empfehlen. – Gunnar