添加 lombok 依赖项和@Slf4j 不允许使用记录器
Adding lombok dependency and @Slf4j does not let use logger
我想使用 Lombok 的记录器。我添加了 @Slf4j
注释,添加了依赖项,它说它无法解析符号 log
。 Error:(5, 1) java: package org.slf4j does not exist
package a;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class a {
public static void main(String[] args) {
log.info("lala");
}
}
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>a</groupId>
<artifactId>a</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
您还需要将 slf4j 本身添加为项目的依赖项,方法是将其包含在 pom 文件中。 lombok.extern
包中的所有 lombok 功能共享此 属性:它们帮助您使用 NOT 已经作为 [=19 的一部分开箱即用的库=] 本身,对于所有这些,lombok 本身并不包含任何这些依赖项。
应该很简单,只需将以下块添加到您的 pom.xml
:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.26</version>
</dependency>
如果您希望 IntelliJ 识别 Lombok 注释,则需要在 IntelliJ(IDE) 中安装 Lombok 插件。并重新启动您的 IDE 以反映更改。
我尝试按照上面建议的 rzwitserloot 添加 slf4j-api 作为依赖项,但这对我不起作用。将它作为插件添加到我的 build.gradle 文件中确实如此:
plugins {
...
id 'io.freefair.lombok' version '4.1.6'
...
}
我想使用 Lombok 的记录器。我添加了 @Slf4j
注释,添加了依赖项,它说它无法解析符号 log
。 Error:(5, 1) java: package org.slf4j does not exist
package a;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class a {
public static void main(String[] args) {
log.info("lala");
}
}
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>a</groupId>
<artifactId>a</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
您还需要将 slf4j 本身添加为项目的依赖项,方法是将其包含在 pom 文件中。 lombok.extern
包中的所有 lombok 功能共享此 属性:它们帮助您使用 NOT 已经作为 [=19 的一部分开箱即用的库=] 本身,对于所有这些,lombok 本身并不包含任何这些依赖项。
应该很简单,只需将以下块添加到您的 pom.xml
:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.26</version>
</dependency>
如果您希望 IntelliJ 识别 Lombok 注释,则需要在 IntelliJ(IDE) 中安装 Lombok 插件。并重新启动您的 IDE 以反映更改。
我尝试按照上面建议的 rzwitserloot 添加 slf4j-api 作为依赖项,但这对我不起作用。将它作为插件添加到我的 build.gradle 文件中确实如此:
plugins {
...
id 'io.freefair.lombok' version '4.1.6'
...
}