Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 建立套接字连接时出错_Java_Rabbitmq - Fatal编程技术网

Java 建立套接字连接时出错

Java 建立套接字连接时出错,java,rabbitmq,Java,Rabbitmq,我正在尝试运行下面的程序,但出现以下错误: Exception in thread "main" java.net.ConnectException: Connection refused: connect at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351) at java.net.P

我正在尝试运行下面的程序,但出现以下错误:

Exception in thread "main" java.net.ConnectException: Connection refused: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
    at java.net.Socket.connect(Socket.java:529)
    at com.rabbitmq.client.ConnectionFactory.createFrameHandler(ConnectionFactory.java:445)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:504)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:533)
    at Recieve.main(Recieve.java:14)
我正在尝试运行的程序是:

import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory;

public class Send {
    private final static String QUEUE_NAME = "hello";

    public static void main(String[] argv) throws java.io.IOException {
        ConnectionFactory factory = new ConnectionFactory();
        factory.setHost("localhost");
        Connection connection = factory.newConnection();
        Channel channel = connection.createChannel();
        channel.queueDeclare(QUEUE_NAME, false, false, false, null);
        String message = "Hello World!";
        channel.basicPublish("", QUEUE_NAME, null, message.getBytes());
        System.out.println(" [x] Sent '" + message + "'");
        channel.close();
        connection.close();
    }
}

我不知道如何进行套接字连接,请告诉我如何解决此问题。

以下是代码正常工作时应遵循的步骤:

  • 下载并安装最新的Erlang
  • 下载RabbitMQ服务器
  • 安装RabbitMQ服务器
  • 编译并运行您的代码,现在应该可以运行了

  • 希望这有帮助

    您正在尝试连接到什么?看起来您正在尝试连接到在localhost上运行的RabbitMQ实例。RabbitMQ实例是否已启动并运行并准备好接受连接?@Peter i dint开始运行RabbitMQ实例,请简要介绍一下,如何启动其实例?我在这里遵循以下步骤:你知道你的代码会做什么吗?我想你知道RabbitMQ是什么?您的代码将尝试连接到本地主机上运行的RabbitMQ(MessageBroker)实例,然后创建一个名为“hello”的队列,并向该队列发布消息“hello World!”。因此,为了使代码正常工作,必须在本地主机上运行RabbitMQ服务器实例。您是否遵循了有关安装服务器的说明()