RabbitMQ SLF4J:无法加载类“ org.slf4j.impl.StaticLoggerBinder”

时间:2019-07-19 10:28:35

标签: java maven intellij-idea rabbitmq

我正在尝试使用InteliJ IDEA(Maven 3.3.9)连接到Java中的RabbitMQ,但是在执行所需的步骤(连接到RabbitMQ之前创建ConnectionFactory对象)时发生错误。

有关详细信息:Maven本身会安装amqp-client:5.7.2org.slf4j-api:1.7.26

我在这里想念什么?我尝试导入org.slf4j.impl.StaticLoggerBinder,但是Java本身不知道这一点。

package TestPackage;

import Configuration.RabbitMQConf;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.ConnectionFactory;
import org.slf4j.LoggerFactory;

import java.io.IOException;
import java.util.concurrent.TimeoutException;

public class TestingClass {
    static ConnectionFactory rbmqFactory;
    static Connection rbmqConn;
    static Channel rbmqChannel;

    public static void main(String[] args){
        RabbitMQConf rbmqConf = new RabbitMQConf();


        rbmqFactory = new ConnectionFactory();
        rbmqFactory.setUsername(rbmqConf.username);
        rbmqFactory.setPassword(rbmqConf.password);
        rbmqFactory.setVirtualHost(rbmqConf.virtualHost);
        rbmqFactory.setHost(rbmqConf.host);
        rbmqFactory.setPort(rbmqConf.port);
    }
}

我尝试运行此错误并收到此错误:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

这是我的pom.xml文件:

<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>XXXX</groupId>
  <artifactId>XXXX</artifactId>
  <version>1.0-XXXX</version>

  <properties>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>com.rabbitmq</groupId>
      <artifactId>amqp-client</artifactId>
      <version>5.7.2</version>
    </dependency>
  </dependencies>
</project>

1 个答案:

答案 0 :(得分:1)

link in the error几乎解释了问题所在以及解决方法。您只需要向pom.xml中的依赖项添加一个日志记录实现。

  

当   org.slf4j.impl.StaticLoggerBinder类无法加载到   记忆。当找不到合适的SLF4J绑定时会发生这种情况   在课堂上。放置slf4j-nop.jar中的一个(只有一个)   slf4j-simple.jar,slf4j-log4j12.jar,slf4j-jdk14.jar或   类路径上的logback-classic.jar应该可以解决问题。

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