如何禁用ActiveMQ客户端jar依赖关系

时间:2019-04-25 06:45:33

标签: java jms activemq

我正在使用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时,它工作正常。但我不想添加这些依赖罐(大约17MB)

是否可以禁用ActiveMQ客户端应用程序的jar依赖项?

1 个答案:

答案 0 :(得分:2)

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