Gradle 管理 Log4j2 注解之后不生效
问题描述:
1. 工具:IntelliJ IDEA 2021.3.1 (Ultimate Edition)
2. 平台:Windows、MacOS
3. 包管理工具:Gradle
4. 代码
import lombok.extern.log4j.Log4j2;
@Log4j2 public class GsonHelper { public void test() { log.info("hello.world") } }
5. 报错信息
6. 原始配置
dependencies { // https://mvnrepository.com/artifact/org.projectlombok/lombok compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.18.22' testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.2' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.2' // https://mvnrepository.com/artifact/org.yaml/snakeyaml implementation group: 'org.yaml', name: 'snakeyaml', version: '1.8' }
自学Java,然后没有太多基础,且刚开始使用gradle做为包管理工具(以前使用的是maven);
网络搜索:都是讲需要在Idea中安装lombok,或者启用注解等,针对IDEA没有提示log,应该是有用的,但是针对编译报错提示,对于我而言,是不能解决问题
根本原因是下面配置,因为我开始只加了编译,不知道还需要 annotationProcessor 也加上;
解决后配置
dependencies { // https://mvnrepository.com/artifact/org.projectlombok/lombok compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.18.22' annotationProcessor 'org.projectlombok:lombok:1.18.22' # 重点一行 testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.2' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.2' // https://mvnrepository.com/artifact/org.yaml/snakeyaml implementation group: 'org.yaml', name: 'snakeyaml', version: '1.8' }
REF:
https://stackoverflow.com/questions/14866765/building-with-lomboks-slf4j-and-intellij-cannot-find-symbol-log