[英]Can't find error(), debug(), info() methods in 'log' object which is created via Lombok's '@Slf4j' annotation
有人可以幫助我在 Lombok 中使用 @Slf4j 注釋嗎?
我更喜歡在我的 SpringBoot 應用程序中記錄一些東西。 為此,我想使用 Lombok 的 @Slf4j 注釋。 我在我的 IntelliJ IDEA 中安裝了 Lombok 插件,打開“注釋處理”,將 @Slf4j 注釋添加到我的 class 並將 lombok 依賴項添加到我的 pom.xml 文件中。 現在我可以在 class 中找到 object 的“日志”,但我無法對其應用任何日志方法(如 error()、debug()、info() 等)。 為什么找不到這些方法?
IntelliJ IDEA 社區 2020.3
Lombok 插件捆綁 203.7717.56
龍目島 1.18.6
pom.xml 中的依賴項:
<properties>
<lombok.version>1.18.6</lombok.version>
</properties>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
</dependency>
</dependencies>
登錄我的 class:
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@RequiredArgsConstructor
@Service
public class ImportServiceImpl implements ImportService {
...
public void importData() {
log.info("some log");
}
...
}
Lombok 本身並沒有帶來任何關於日志框架等的依賴項。您需要自己添加日志框架依賴項。
例如,在您的情況下,添加以下依賴項,它將帶來 SLF4J 以及 Logback 作為日志記錄實現:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</dependency>
我已經准備好了一切。 構建工作正常,我能夠運行應用程序而沒有任何編譯錯誤。 只是 IDE 在抱怨。
就我而言,我必須使緩存無效。
Go 到 File > Invalidate Caches(選擇“Clear file system caches and local history”)> Invalidate and Restart。
希望有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.