嵌入式ActiveMQ代理需要哪些依赖项?

时间:2011-06-13 19:08:58

标签: java maven jms activemq

我正在尝试使用嵌入式ActiveMQ代理进行单元测试,如下所述:http://activemq.apache.org/how-to-unit-test-jms-code.html

我需要包含哪些Maven依赖项?目前我只有这些:

<dependency>
  <groupId>javax</groupId>
  <artifactId>javaee-api</artifactId>
  <version>6.0</version>
  <scope>provided</scope>
</dependency>
<dependency>
  <groupId>org.apache.activemq</groupId>
  <artifactId>activemq-core</artifactId>
  <version>5.5.0</version>
</dependency>

这就是我得到的:

java.lang.ClassFormatError: Absent Code attribute in method that 
is not native or abstract in class file javax/jms/JMSException

尝试实例化代理时:

final BrokerService broker = new BrokerService();

我还应该在Maven依赖项列表中添加什么? (我使用Spring)

3 个答案:

答案 0 :(得分:7)

解决方案很简单,只需删除javax:javaee-api依赖项。

答案 1 :(得分:4)

你可以尝试activemq-all

<dependency>
  <groupId>org.apache.activemq</groupId>
  <artifactId>activemq-all</artifactId>
  <version>5.5.0</version>
</dependency>

答案 2 :(得分:3)

将javaee依赖项移动到类路径的末尾。这解决了我的问题。