我无法在8080上启动rabbitmq。我怎么能这样做?我也无法在ubuntu上找到rabbitmq.conf。请帮助我。
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("localhost");
factory.setPort(8080);
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();
我在运行时遇到这些错误:
Exception in thread "main" java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
at java.net.Socket.connect(Socket.java:579)
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 javaapplication3.rabbitchat.main(rabbitchat.java:26)
答案 0 :(得分:4)
您可以使用以下命令在端口8080上启动rabbitmq服务:
:~$ RABBITMQ_NODE_PORT=8080 rabbitmq-server
默认情况下,如果未在开始时配置,则第一个实例的节点名称为“rabbit”。如果您想使用不同的NODENAME
或多个rabbitmq服务器实例启动rabbitmq服务进行群集,则需要为每个开始的实例更改NODENAME
以及NODE_PORT
:< / p>
:~$ RABBITMQ_NODE_PORT=<PORT> RABBITMQ_NODENAME=<UNIQUE_NODENAME> rabbitmq-server
答案 1 :(得分:1)
您确定端口8080上没有其他进程正在运行吗?这是一个非常受欢迎的港口。 (Oracle使用它,许多应用程序服务器等)
答案 2 :(得分:1)
如果有人仍然感兴趣,当我使用推荐“setPort”时,我收到“连接被拒绝”错误,仅。当我评论出来时,它有效!
我也有输出端口#的代码,它说它设置为8080虽然我把setPort(8080)拿出来......非常奇怪......
答案 3 :(得分:0)
Rabbitmq.conf文件通常不附带aptm版本的Rabbitmq,但Rabbit总是在启动时查找该文件,因此您可以手动创建它。 http://www.rabbitmq.com/configure.html#configuration-file
正如Kurt Du Bois所说,确保该端口上没有其他任何内容正在运行,运行netstat -anlp | grep 8080
应该会向您提供该信息。
答案 4 :(得分:0)
Oracle将在8080端口上运行。所以如果你需要在8080上运行rabbitmq,请停止Oracle服务。