MapStruct と Lombok の統合: 「不明なプロパティ」エラーの解決
Lombok アノテーションで MapStruct を使用すると、「」というエラーが発生する場合があります。結果のタイプに不明なプロパティがあります。」このエラーは、Maven が Lombok プロセッサではなく MapStruct プロセッサのみを使用するために発生します。
オプション 1: Maven コンパイラー プラグインを変更する
maven-compiler-plugin 構成を更新するLombok と MapStruct の両方のアノテーション プロセッサを含めるにはpaths:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.6.1</version> <configuration> <annotationProcessorPaths> <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>0.2.0</version> </path> <path> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>${org.mapstruct.version}</version> </path> </annotationProcessorPaths> </configuration> </plugin>
オプション 2: MapStruct を依存関係として宣言する
または、mapstruct-processor の依存関係をメインの依存関係セクションに追加し、 annotationProcessorPaths:
<dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>${org.mapstruct.version}</version> </dependency>
IntelliJ に関する追加の考慮事項
IntelliJ エラーを防ぐには、提供された依存関係として mapstruct-processor を追加します:
<dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>${org.mapstruct.version}</version> <scope>provided</scope> </dependency>
ロンボク島に関するメモバージョン
Lombok バージョン 1.18.16 以降の場合、MapStruct と適切に統合するには lombok-mapstruct-binding 依存関係が必要です。
以上がLombok で MapStruct を使用するときに発生する「不明なプロパティ」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。