活动MQ - HelloWorld示例异常



我正在尝试运行这里找到的hello world示例

我添加了activemq-all-5.5.1.jar到已经存在的库

使用以下警告成功构建

警告:[options] bootstrap类路径没有与-source 1.6一起设置

但是它没有运行,我得到这个异常

线程" thread -0"异常java.lang.ClassFormatError:方法中没有代码属性,类文件javax/jms/JMSException在java.lang.ClassLoader.defineClass1(本机方法)java.lang.ClassLoader.defineClass (ClassLoader.java: 791)java.security.SecureClassLoader.defineClass (SecureClassLoader.java: 142)java.net.URLClassLoader.defineClass (URLClassLoader.java: 449)java.net.URLClassLoader.access 100美元(URLClassLoader.java: 71)在java.net.URLClassLoader 1.美元运行(URLClassLoader.java: 361)在java.net.URLClassLoader 1.美元运行(URLClassLoader.java: 355)在java.security.AccessController。doPrivileged(本地方法)java.net.URLClassLoader.findClass (URLClassLoader.java: 354)java.lang.ClassLoader.loadClass (ClassLoader.java: 423)sun.misc.Launcher AppClassLoader.loadClass美元(Launcher.java: 308)java.lang.ClassLoader.loadClass (ClassLoader.java: 356)hw_testing.HW_testing HelloWorldProducer.run美元(HW_testing.java: 69)java.lang.Thread.run (Thread.java: 722)

线程" thread -1"异常java.lang.ClassFormatError:方法中没有代码属性,类文件javax/jms/JMSException在java.lang.ClassLoader.defineClass1(本机方法)java.lang.ClassLoader.defineClass (ClassLoader.java: 791)java.security.SecureClassLoader.defineClass (SecureClassLoader.java: 142)java.net.URLClassLoader.defineClass (URLClassLoader.java: 449)java.net.URLClassLoader.access 100美元(URLClassLoader.java: 71)在java.net.URLClassLoader 1.美元运行(URLClassLoader.java: 361)在java.net.URLClassLoader 1.美元运行(URLClassLoader.java: 355)在java.security.AccessController。doPrivileged(本地方法)java.net.URLClassLoader.findClass (URLClassLoader.java: 354)java.lang.ClassLoader.loadClass (ClassLoader.java: 423)sun.misc.Launcher AppClassLoader.loadClass美元(Launcher.java: 308)java.lang.ClassLoader.loadClass (ClassLoader.java: 356)hw_testing.HW_testing HelloWorldProducer.run美元(HW_testing.java: 69)java.lang.Thread.run (Thread.java: 722)

…线程3和线程4也有同样的异常

有谁能帮我一下吗?

这是一个依赖关系的问题(javax/jms/JMSException在多个jar中),例如在javaee-api(5或6)中发生-这个jar缺少几个类的一些方法体。activemq-all-5.5.1.jar也包含javax.jms.JMSException,但这些类别不相同。如果javaee-api在classpath中先出现,您将得到java.lang.ClassFormatError .

如果您使用maven,将javaee-api 放在 activemq-all之后(或删除它)。一般来说,删除不必要的依赖项。

最新更新