即使它在编译时存在,也无法加载该类

时间:2012-01-18 13:47:01

标签: java servlets weblogic

在我们的项目中,我在部署代码时遇到以下异常。掩码类是一个实用程序类文件,无法加载运行时。虽然在编译时该类存在,但为什么类无法加载?

javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not initialize class com.***.****.******
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:333)
    at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    ****
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)

2 个答案:

答案 0 :(得分:1)

如果NoClassDefFoundError个变量或static块在类初始化期间抛出static {}(例如RuntimeException等),则会出现NullPointerException。< / p>

这个RuntimeException应该在堆栈跟踪的下方可见。解释它并相应地修复代码。

答案 1 :(得分:1)

我同意BalusC。但请注意,根据您的情况,异常可能不会浮出水面(在这种情况下,您只是被迫仔细观察)。较新的JRE要好得多(尽管你在weblogic中运行可能会做一些时髦的东西)并且我暂时没有遇到这个问题,但曾几何时它是我最大的漏洞之一。