¿@Builder de Lombok no funciona? Acá la solución que me salvó
今天在使用Spring Boot和Lombok的Java项目中遇到了一个令人困扰的错误。代码看起来一切正常,但编译时出现以下错误信息:
java: no se puede encontrar el símbolo builderClass
问题排查
经过多次代码检查后,发现问题并非出在Lombok的使用方式上,而是项目pom.xml文件的配置问题。
:magnifying_glass_tilted_left: 问题原因
maven-compiler-plugin
配置不正确spring-boot-maven-plugin
中意外排除了Lombok依赖
这导致编译时无法识别@builder
等注解。
<!-- 错误配置示例 -->
<plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><executions><execution><!-- 意外排除了lombok --><configuration><excludes><exclude><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></exclude></excludes></configuration></execution></executions>
</plugin>
:check_mark_button: 解决方案
修正maven-compiler-plugin
配置,添加正确的Java版本并配置annotationProcessorPaths
:
<!-- 解决方案 -->
<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><configuration><annotationProcessorPaths><path><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.28</version></path><path><groupId>org.mapstruct</groupId><artifactId>mapstruct-processor</artifactId></path></annotationProcessorPaths><release>${java.version}</release></configuration>
</plugin>
同时确保没有其他插件排除Lombok依赖。完成这些修改后,@builder
注解恢复正常工作。
:raising_hands: 结论
有时问题不在代码本身,而在项目配置中。如果你在使用Lombok时遇到类似问题,建议检查pom.xml文件配置。希望这个经验能帮助你避免类似的麻烦。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
公众号二维码