我试图在我的应用程序中使用activemq,但是当我尝试连接到本地主机时会继续出现错误:
log4j:WARN No appenders could be found for logger (org.springframework.core.env.StandardEnvironment). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. Exception in thread "main" org.springframework.jms.UncategorizedJmsException: Uncategorized exception occured during JMS processing; nested exception is javax.jms.JMSException: Could not connect to broker URL: tcp://localhost:61616. Reason: java.net.ConnectException: Connection refused at org.springframework.jms.support.JmsUtils.convertJmsAccessException(JmsUtils.java:316) at org.springframework.jms.support.JmsAccessor.convertJmsAccessException(JmsAccessor.java:168) at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:469) at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:534) at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:526) at sender.MessageSender.sendMessage(MessageSender.java:16) at sender.SenderMain.main(SenderMain.java:13) Caused by: javax.jms.JMSException: Could not connect to broker URL: tcp://localhost:61616. Reason: java.net.ConnectException: Connection refused at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:35) at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:293) at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:238) at org.apache.activemq.ActiveMQConnectionFactory.createConnection(ActiveMQConnectionFactory.java:184) at org.springframework.jms.support.JmsAccessor.createConnection(JmsAccessor.java:184) at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:456) ... 4 more Caused by: java.net.ConnectException: Connection refused 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:432) at java.net.Socket.connect(Socket.java:529) at org.apache.activemq.transport.tcp.TcpTransport.connect(TcpTransport.java:504) at org.apache.activemq.transport.tcp.TcpTransport.doStart(TcpTransport.java:467) at org.apache.activemq.util.ServiceSupport.start(ServiceSupport.java:55) at org.apache.activemq.transport.AbstractInactivityMonitor.start(AbstractInactivityMonitor.java:132) at org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:58) at org.apache.activemq.transport.WireFormatNegotiator.start(WireFormatNegotiator.java:72) at org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:58) at org.apache.activemq.transport.TransportFilter.start(TransportFilter.java:58) at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:273) ... 8 more
应该运行一个文件来启动它(活动mq),这是Windows机器上的.bat文件.当你运行它,然后它开始,你让它运行在命令提示符.
在家里我有一个mac,并使用mac等效终端打印:
Last login: Mon Oct 29 19:57:15 on ttys000 (null):~ rickilambert$/Users/rickilambert/Downloads/apache-activemq-5.7.0/bin/macosx/activemq ; exit; Usage: /Users/rickilambert/Downloads/apache-activemq-5.7.0/bin/macosx/activemq { console | start | stop | restart | status | dump } logout [Process completed]
任何人都可以帮助我让这件事开始运行吗?
解决方法
您的应用程序无法连接到activemq.检查您的activemq是否正在运行并在localhost 61616上侦听.
您可以尝试使用:netstat -a来检查activemq进程是否已经启动.或者尝试检查是否可以使用管理页面访问您的actvemq:localhost:8161 / admin / queues.jsp
在mac上,您将使用以下命令启动activemq:
$ACTMQ_HOME/bin/activemq start
或者如果您的配置文件(activemq.xml)位于另一个位置,您可以使用:
$ACTMQ_HOME/bin/activemq start xbean:file:${location_of_your_config_file}
在你的情况下,可执行文件是:bin / macosx / activemq,所以你需要使用:$ACTMQ_HOME / bin / macosx / activemq start