idea gradle lombok找不到符号
idea gradle lombok找不到符号
问题:编译时报找不到符号错误
原因:未正确配置lombok,实体类上面使用了@Data注解的符号
配置步骤:
1、idea->setting->plugins->搜索lombok插件,安装,然后重启idea
2、gradle项目中的build.gradle的dependencies中添加如下
dependencies {
compileOnly 'org.projectlombok:lombok:1.18.22'
annotationProcessor 'org.projectlombok:lombok:1.18.22'
testCompileOnly 'org.projectlombok:lombok:1.18.22'
testAnnotationProcessor 'org.projectlombok:lombok:1.18.22'
}
注意:(提交代码到git,在jenkins上面部署)
部署在jenkins上面需要注释掉: annotationProcessor和testAnnotationProcessor
compileOnly 'org.projectlombok:lombok:1.18.20'
// annotationProcessor 'org.projectlombok:lombok:1.18.20'
testCompileOnly 'org.projectlombok:lombok:1.18.20'
// testAnnotationProcessor 'org.projectlombok:lombok:1.18.20'
排查方法:
1.lombok插件是否安装,选择File->Settings->Plugins,搜索Lombok并安装(有的安装过的可能需要更新一下)
2.启用 Annotation processing,启用方法:File => Settings => Build, Execution, Deployment => Compiler => Annotation Processors => Enable annotation processing
3.设置Gradle项目使用IDEA来build和run整个项目。
4.调整编译器:由javac >> Eclipse,启用方法:File => Settings => Build, Execution, Deployment => Compiler => Java Compiler =>Use compiler Eclipse
5.在项目的根目录下面,添加如下内容的:lombok.config文件,下载
# lombok.config
# 声明该配置文件是一个根配置文件,从该配置文件所在的目录开始扫描
config.stopBubbling=true
# 全局配置 equalsAndHashCode 的 callSuper 属性为true
lombok.equalsAndHashCode.callSuper=call