LombokとMapStructを同時に使う場合に注意が必要といのを知った
Lombokよりも後に動くAnnotation Processorから、Lombokで自動生成されたBuilderが見えなくなっているとのこと
なのでpom.xmlで先にmapstruct-processor
の依存を書いて、次にlombok
の依存を書くと動く
<dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <scope>provided</scope> <optional>true</optional> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>provided</scope> <optional>true</optional> </dependency>
pom.xmlの記載順番に依存関係があるのは知らなかった
<optional>true</optional>
と<scope>provided</scope>
の違いがわからなかったので後日調べる