【问题标题】:ActiveMQ Java consumer throws Transport scheme NOT recognized: [tcp]ActiveMQ Java 消费者抛出无法识别的传输方案:[tcp]
【发布时间】:2019-11-04 04:16:23
【问题描述】:

我已经用 Java 创建了 ActiveMQ 消费者文件。当我尝试连接到 ActiveMQ 时,它显示:

exception in run method::javax.jms.JMSException: Could not create Transport. Reason: java.io.IOException: Transport scheme NOT recognized: [tcp]

当我将相同的消费者文件作为独立文件运行时,它可以正常工作,但使用 Ant 构建它就无法正常工作。我在构建路径中包含了 activemq-all.jar。但它仍然无法正常工作。

连接网址:tcp://localhost:61616

import java.util.Map;
import java.util.HashMap;
import java.util.ArrayList;
import javax.jms.Connection;
import javax.jms.DeliveryMode;
import javax.jms.Destination;
import javax.jms.ExceptionListener;
import javax.jms.MessageListener;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageConsumer;
import javax.jms.MessageProducer;
import javax.jms.Session;
import javax.jms.TextMessage;
import org.apache.activemq.ActiveMQConnectionFactory;

    private void createConnection(String USER, String PASSWORD, String connectionURL) throws Exception{
        this.connectionFactory = new ActiveMQConnectionFactory(USER, PASSWORD, connectionURL);
         // connectionURL = tcp://localhost:61616
        // Create a Connection
        this.connection = connectionFactory.createConnection();
        connection.start();
        connection.setExceptionListener(this);
        // Create a Session
        this.session = connection.createSession(false, Session.CLIENT_ACKNOWLEDGE);
    }

【问题讨论】:

标签: java ant jms activemq


【解决方案1】:

此问题是由于 ANT 构建造成的。 我在创建目标 jar 时删除了 META-INF <zipfileset src="activemq-all.jar" excludes="META-INF/**" />

然后我只用下面提到的命令替换了它: <zipfileset src="activemq-all.jar">

【讨论】:

    猜你喜欢
    • 2017-02-11
    • 1970-01-01
    • 2015-11-25
    • 2019-03-08
    • 2019-03-21
    • 2012-08-04
    • 1970-01-01
    • 2014-08-06
    • 1970-01-01
    相关资源
    最近更新 更多