我收到此错误:

Exception in thread "http-server" java.lang.NoClassDefFoundError: org/w3c/jigmonitor/ReplyServer

但我不明白为什么。有人会解释为什么会这样吗?
这是导致问题的类:
public class ReplyServer implements Serializable
{
    public ReplyServer()
    {
        super();
    }
}

最佳答案

似乎正在尝试加载的类未找到您正在定义的类。以我的经验,这是由以下三个问题之一引起的:


您对该类的包装声明不正确。在这种情况下,http服务器线程上的某些内容期望您的类在软件包org.w3c.jigmonitor中声明。
您的源文件不在正确的目录中。在这种情况下,您的源文件应位于“ org / w3c / jigmonitor /”之类的目录结构中,前提是您实际需要的软件包。
ReplyServer的已编译类的路径不在JVM的类路径中。您可以通过查看用于启动JVM的类路径并查看该类是否确实存在来进行检查。在大多数常规设置servlet设置中,将有一个“ WEB-INF / classes”文件夹供您浏览。


祝好运!

(David发布的链接提供了有关此类问题及其可能原因的大量信息。我建议将其隐藏起来,以备后用)

关于java - 我的线程中出现NoClassDefFoundError异常,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11386526/

10-08 22:51