【问题标题】:How to disable ActiveMQ client jar dependency如何禁用 ActiveMQ 客户端 jar 依赖
【发布时间】:2019-09-14 12:48:55
【问题描述】:

我正在使用 ActiveMQ 发布 JMS 消息。当我使用下面的代码时,它会使用两个 Jars(activemq-client.jar 和 geronimo-jms_1.1_spec.jar)正确编译:

Connection connection = null;
ConnectionFactory connectionFactory = new 
ActiveMQConnectionFactory(ActiveMQConnection.DEFAULT_BROKER_URL);
connection = connectionFactory.createConnection();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Topic topic = session.createTopic("customerTopic");

connection.start();

String payload = "Important task";
Message msg = session.createTextMessage(payload);
MessageProducer producer = session.createProducer(topic);
producer.send(msg);
Thread.sleep(3000);
session.close();
connection.close();

但是,在运行时包含所有依赖项 jar 会出错。添加所有依赖项 jar 时它工作正常。但我不想添加这些依赖 jar(大约 17MB)

有什么方法可以禁用 ActiveMQ 客户端应用程序的 jars 依赖关系?

【问题讨论】:

  • 所以您希望您的代码能够在没有所有支持代码的情况下神奇地工作?

标签: java jms activemq


【解决方案1】:

编译时和运行时的依赖关系通常不同,因为编译代码与实际运行代码的要求不同。如果存在运行时依赖项,您不能简单地摆脱它,否则应用程序将无法正常运行(或根本无法运行)。 “依赖关系”是有原因的依赖关系;应用程序依赖它们。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-11
    • 2011-07-26
    • 2010-12-17
    • 2015-01-02
    • 1970-01-01
    • 1970-01-01
    • 2016-10-19
    • 2011-02-12
    相关资源
    最近更新 更多