无法访问记录器:"cannot resolve symbol (info|warning|debug)"

Unable to access logger: "cannot resolve symbol (info|warning|debug)"

我正在我的 Java 项目中实施带有 logback 的 SLF4J,我认为这很容易。这应该是轻而易举的事。不是。

我的困境是:IntelliJ 无法识别我正在创建的记录器对象存在并且不会因为该错误而构建。这是下面的代码。

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Main {
    public static final Logger logger = LoggerFactory.getLogger(Main.class);

    // Will replace with config values
    private static final String token  = "bottoken";
    private static final String prefix = "!";

    logger.info("This info to the left is red");
}

我已经尝试按照许多人的建议使缓存失效并删除 IntelliJ 文件系统,但无济于事。它甚至达到了删除整个项目然后在不同文件夹中重新创建的地步。没有。

项目设置中我的库列表中的显示和重新加载 Maven 项目也无济于事。

我已经通过 Maven 添加了 SLF4J,如下面 pom.xml 所示:

<dependencies>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.22</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.7.22</version>
    </dependency>

    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.1.8</version>
    </dependency>

    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-core</artifactId>
        <version>1.1.8</version>
    </dependency>
</dependencies>

它全部在列出的库中检出,所有其他依赖项(未列出)显示并编译正常。

您的代码没有在方法中换行。

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Main {
    public static final Logger logger = LoggerFactory.getLogger(Main.class);

    // Will replace with config values
    private static final String token  = "bottoken";
    private static final String prefix = "!";

    public static void main(String[] args) {
        logger.info("This info to the left is red");
    }
}