连接rabbitmq 报错 com.rabbitmq.client.ShutdownSignalException: connection error

        ConnectionFactory factory = new ConnectionFactory();
        // 连接IP
        factory.setHost("127.0.0.1");
        // 默认监听端口
        factory.setPort(5672);
        // 虚拟机
        factory.setVirtualHost("/");

        // 设置访问的用户
        factory.setUsername("guest");
        factory.setPassword("guest");
        // 建立连接
        Connection conn = factory.newConnection();

factory.newConnection() 程序走到这一行报错 :

com.rabbitmq.client.ShutdownSignalException: connection error 

Caused by: java.io.EOFException:

原因:

自己在 rabbitmq.config 配置文件 rabbitmq_management 子模块中加了一行 {listener, [{port,     5672}, {ip,       "127.0.0.1"},{ssl,     false}]} ,导致与 tcp_listeners 默认端口 5672 冲突。 

tcp_listeners 的端口是给程序用的, rabbitmq_management  listener port 是给 http 用的,所以不能相同

解决办法:

rabbitmq_management  里面的改成 {listener, [{port,     1234}, {ip,       "127.0.0.1"},{ssl,     false}]} ,这样 http://127.0.0.1:1234 来访问管理界面,当然这一行配置也可以屏蔽,那就通过默认端口  http://127.0.0.1:15672 来访问管理界面

你可能感兴趣的:(rabbitmq)