一、现象
IDEA在编译的时候报Error:(30, 17) java: 找不到符号符号: 变量 log
Error:(30, 17) java: 找不到符号
符号: 变量 log
位置: 类 com.mokerson.rabbitmq.config.RabbitMqConfig
二、原因
这是因为使用@Slf4j或者@Log4j2这种注解方式记录日志。但是使用注解方式,就要往该项目中引入lombok插件,下面介绍两种引入这个插件的方式;
三、解决办法
第一种方法:直接添加POM依赖
在POM文件中添加
xml
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.20</version>
</dependency>
第二种方法:添加Lombok插件
依次在IDEA中点击 File------》Settings------》Plugins,输入Lombok,选择Lombok的Installed进行安装
如果以上方法都没有解决再试试这种解决方案,当然是有前提的
如果你是使用SpringBoot构建的项目,那么就试着将它的版本删除,因为SpringBoot的父级POM文件中已经定义了Lombok的合适版本。
第三种方法:修改配置
如果以上方案都不能解决问题,这时候看一下右下角的报错信息是否包含这个,如果有这个问题则说明是配置不对造成的
Lombok安装完成之后,启动项目时出现 Lombok Requires Annotation Processing
的错误提示
vbnet
16:08 Lombok Requires Annotation Processing
Annotation processing seems to be disabled for the project "leyou".
For the plugin to function correctly, please enable it under
"Settings > Build > Compiler > Annotation Processors"
解决方案
依次点击setting --> Build,Execution,Deployment --> Annotation Processors打开编辑页面,勾上 Enable annotation processing前面的勾,保存后需要重启IDEA
第四种方法:设置Java虚拟机(JVM)系统属性的命令
在以下位置加上该配置"-Djps.track.ap.dependencies=false"
在Java或基于Java的应用程序中:
-D
用于设置一个系统属性。jps.track.ap.dependencies
是这个系统属性的名称。false
是赋予该属性的值。
这个特定的属性 jps.track.ap.dependencies
不是一个标准的JVM系统属性;它可能特定于某个特定的应用程序或框架。它似乎用于控制Java构建系统中注释处理器依赖项的追踪,可能是与JetBrains的IntelliJ IDEA或相关工具有关。