Spring中@Builder注解无法生成builder()方法的问题求助
解决Lombok @Builder注解不生效问题(Spring Boot 3 + JDK17)
针对你遇到的Response.builder()无法识别的问题,按以下步骤排查解决:
1. 确认Lombok依赖配置正确
Spring Boot 3需要适配兼容的Lombok版本,确保你的依赖配置正确:
Maven示例:
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>
建议使用Spring Boot父依赖管理的Lombok版本,避免版本不兼容。
Gradle示例:
dependencies { compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' }
必须添加annotationProcessor依赖,否则Lombok的注解处理器无法生成代码。
2. 检查IDE的Lombok插件及注解处理器设置
- IntelliJ IDEA:
- 打开
Settings > Plugins,搜索"Lombok",确保插件已安装并启用。 - 打开
Settings > Build, Execution, Deployment > Compiler > Annotation Processors,勾选"Enable annotation processing"。
- 打开
- Eclipse:
- 通过Eclipse Marketplace安装Lombok插件。
- 打开
Window > Preferences > Java > Compiler > Annotation Processing,勾选"Enable annotation processing"。
3. 清理缓存并重新编译
编译缓存可能导致Lombok生成的代码未更新:
- IntelliJ:点击
File > Invalidate Caches...,选择"Invalidate and Restart"。 - Maven:执行命令
mvn clean compile。 - Gradle:执行命令
gradle clean build。
4. 排查代码与注解冲突
- 确认
Response类上的@Builder注解未被其他注解覆盖,@Data与@Builder兼容,无需额外配置。 - 检查
Response类为public修饰(你的代码已满足),确保全局异常处理器能正确导入该类。
5. 验证Lombok版本兼容性
确保使用的Lombok版本支持JDK17,推荐使用1.18.24及以上版本(该版本开始全面支持JDK17),若依赖中指定旧版本,升级到最新稳定版即可。
内容的提问来源于stack exchange,提问作者Mahadi Hasan
相关产品推荐
相关产品推荐

