我有一个 Maven 项目,可以从命令行构建,没有任何问题。但是,当我使用 IntelliJ 构建它时,出现错误:
java: FileName.java:89: cannot find symbol
symbol : variable log
java文件中没有定义或导入日志,但是有一个
@Slf4j
final public class FileName {
类主体之前的语句,应定义日志类。
在项目结构窗口中,类为:
Maven: org.slf4j:jcl-over-slf4j:1.6.1
Maven: org.slf4j:slf4j-api:1.6.6
Maven: org.slf4j:slf4j-log4j12:1.6.6
Maven: org.slf4j:slf4j-simple:1.6.6
列在库下,并指示为已下载且可用。
知道为什么这会通过命令行使用 Maven 构建,而不是通过 IntelliJ 构建,以及如何解决该问题?
最佳答案
除了 having Lombok plugin installed ,还要确保选中“启用注释处理
”复选框:
Preferences > Compiler > Annotation Processors
注意:从 IntelliJ 2017 开始,“启用注释处理
”复选框已移至:
Settings > Build, Execution, Deployment > Compiler > Annotation Processors
关于intellij-idea - 使用 Lombok 的 @Slf4j 和 Intellij 进行构建 : Cannot find symbol log,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14866765/