【问题标题】:Active MQ - HelloWorld example exceptionActivemq - Hello World 示例异常
【发布时间】:2012-01-03 08:30:16
【问题描述】:

我正在尝试运行 hello world 示例 found here

我已将 activemq-all-5.5.1.jar 添加到库中

它成功构建并出现以下警告

警告:[options] 引导类路径未与 -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.run(URLClassLoader.java:361) 在 java.net.URLClassLoader$1.run(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.run(URLClassLoader.java:361) 在 java.net.URLClassLoader$1.run(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 也有同样的例外

谁能帮帮我?

【问题讨论】:

    标签: java exception jakarta-ee jms activemq


    【解决方案1】:

    这是依赖项的问题(javax/jms/JMSException 在多个 jar 中),例如使用javaee-api(5 或 6)- 这个 jar 缺少几个类的一些方法体。 activemq-all-5.5.1.jar 也包含 javax.jms.JMSException 但这些类并不相同。如果javaee-api 在类路径中排在第一位,您将获得java.lang.ClassFormatError

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

    【讨论】:

      猜你喜欢
      • 2012-02-19
      • 1970-01-01
      • 2012-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多