Web应用程序中的随机NoClassDefFound错误

Jam*_*ook 5 java linux jetty noclassdeffounderror

想知道那里是否有任何大师可以解释为什么以下随机发生.

我们在Jetty 6.1.26中部署了一个Web应用程序,运行在使用JRE 1.7_03的Linux安装上

不是每一次,但偶尔,当Jetty启动时 - 似乎是一个随机类(来自我们的项目)似乎是NoClassDefFound错误的来源.如果我们重启Jetty,他们的问题就会消失.

发生的唯一模式似乎是通过JAXB注释填充错误根目录中的类.

为了更多地了解频率,感觉这发生了1/50倍,如果是这样的话.

我很想知道这个错误的原因和原因.

Bru*_*der 1

不确定这是否有帮助,但我们遇到了 Jetty 8 和 java 6 的注释问题。长话短说,该版本中的注释处理似乎依赖于 libasm,例如字节码检查。所以我们必须小心

  • 我们用什么来编译我们的类(例如;JDK 版本等...)
  • 我们不会通过依赖项拉取多个 asm/javassist 库并最终加载错误的库

我不熟悉 Jetty 6 和 Jaxb 处理注释的方式,但我实际上很惊讶你可以在 Java 7 上运行它们。你能尝试使用 Java 6 运行你的代码吗?