一个 Lombok 打包的问题

问题描述

center 系统的 api 模块,部分 dto 使用了Lombok 注解,使用 gradle 的 uploadArchives 上传后。web 系统在引入这个包后会有类似报错 Error:(140, 37) java: 找不到符号,使用了 Lombok 的 @Data 注解的 dto 找不到 getter/setter 方法。

解决方案

在 center 系统的 api 模块的 build.gradle 中的 dependencies 加上如下代码:

annotationProcessor('org.projectlombok:lombok')

推荐方式

annotationProcessor('org.projectlombok:lombok')
compileOnly('org.projectlombok:lombok')
testAnnotationProcessor('org.projectlombok:lombok')
testCompileOnly('org.projectlombok:lombok')

参考:Stack Overflow