JMS应用程序给出错误

时间:2013-01-20 13:32:00

标签: java netbeans glassfish jms

我正在尝试运行一些应用程序(包括我自己的应用程序和教程应用程序)来帮助我理解JMS的基础知识。应用程序中的代码应该是正确的(对于至少一些代码)。我添加的库包括:Java EE 6 API Library - javaee-api-6.0.jarjndi-properties.jarappserv-rt.jarjavaee.jarJDK 1.7(Default)

但是我尝试启动的每个应用程序都会收到以下错误消息:

run:
java.lang.ClassFormatError: Absent Code attribute in method that is not native or abstract in class file javax/jms/JMSException
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2442)
    at java.lang.Class.getMethod0(Class.java:2685)
    at java.lang.Class.getMethod(Class.java:1620)
    at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:488)
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:480)
Exception in thread "main" Java Result: 1
BUILD SUCCESSFUL (total time: 1 second)

请注意它确实说BUILD SUCCESSFUL,但它是一个可运行的表单类(有2个文本字段和一个按钮),我看不到我的表单。

我正在使用GlassFish Server 3.1.2在NetBeans 7.1.1中尝试我的应用程序1.我在管理控制台中配置了已使用的连接工厂和目标资源。

正如其他相关问题所示,我尝试在类路径中上下移动javaee.jar,甚至删除它,没有结果。 Java EE 6 API Library也是如此,但我的项目需要那个jar。

1 个答案:

答案 0 :(得分:1)

javaee-api-6.0.jar更改为javaee-api-5.0.5.jar修正了它。