我实现SLF4J并重新登录我的Java项目,我认为这是轻而易举的事。它应该是轻而易举的。它不是。
我的困境是: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>
这一切都在列出的库中检出,所有其他依赖项(没有列出)显示并编译正常。
答案 0 :(得分:2)
您拥有的代码不会将该行包装在方法中。
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");
}
}