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 버전 참고사항
Lombok 버전 1.18.16 이상의 경우 lombok-mapstruct-bind 종속성이 필요합니다. MapStruct와의 적절한 통합을 보장하세요.
위 내용은 Lombok에서 MapStruct를 사용할 때 \'알 수 없는 속성\' 오류를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!