
Imagine Apps
PreguntaTengo 2 Preguntas:
- MapStruct funciona con Lombok? para no tener que generar todos esos getters y setters
Luis Arturo Conde Hernández
Por si usaron maven, acá dejo el annotationProcessorPaths.
<properties> <java.version>11</java.version> <org.mapstruct.version>1.5.0.RC1</org.mapstruct.version> <org.projectlombok.version>1.18.22</org.projectlombok.version> <lombok-mapstruct-binding.version>0.2.0</lombok- mapstruct-binding.version> </properties> <annotationProcessorPaths> <path> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>${org.mapstruct.version}</version> </path> <path> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${org.projectlombok.version}</version> </path> <path> <groupId>org.projectlombok</groupId> <artifactId>lombok-mapstruct-binding</artifactId> <version>${lombok-mapstruct-binding.version}</version> </path> </annotationProcessorPaths>
Alejandro Ramírez
Se puede trabajar con MapStruct y Lombok juntos. Esencialmente MapStruct debe esperar a que Lombok genere todo el código antes de que él haga su trabajo.
Puedes ver el FAQ de Mapstruct en el apartado de trabajo con Lombok.
Lo único que tienes que hacer es definir el annotationProcessor de Lombok como está el de Mapstruct. Debería quedar algo así
dependencies { // MapStruct implementation 'org.mapstruct:mapstruct:1.3.1.Final' annotationProcessor 'org.mapstruct:mapstruct-processor:1.3.1.Final' // Lombok implementation 'org.projectlombok:lombok:1.18.16' annotationProcessor 'org.projectlombok:lombok:1.18.16' }