MapStruct未生成实现求助(Java17+Gradle环境)
MapStruct未生成实现类的解决方法(Java 17 + Gradle环境)
核心问题:依赖配置错误
你当前把MapStruct的注解处理器依赖放在了implementation配置中,这会导致Gradle无法触发注解处理器生成代码。正确的做法是将处理器依赖放在annotationProcessor配置块内。
修正后的Gradle依赖配置
implementation 'org.mapstruct:mapstruct:1.5.5.Final' annotationProcessor 'org.mapstruct:mapstruct-processor:1.5.5.Final'
额外检查项
- 执行完整构建命令:使用
gradle clean build触发注解处理器执行,bootRun默认不会触发注解处理器的代码生成步骤,除非你配置了任务依赖。 - 确认插件配置:确保
build.gradle中已应用java或org.springframework.boot插件,这些插件会正确处理注解处理器流程。 - IDE注解处理器开关:如果使用IntelliJ IDEA,需开启注解处理器支持:
- 进入
Settings → Build, Execution, Deployment → Compiler → Annotation Processors - 勾选
Enable annotation processing
- 进入
- 注解包路径验证:确保
@Mapper和@Mapping注解导入的是org.mapstruct包下的类,而非其他同名注解。
验证生成结果
执行gradle clean build后,生成的SimpleMapperImpl类会出现在build/generated/sources/annotationProcessor/java/main目录下的对应包路径中。
内容的提问来源于stack exchange,提问作者Ravi Teja
相关产品推荐
相关产品推荐

