NoClassDefFoundError错误发生的原因
是因为Java虚拟机在编译时能找到合适的类,而在运行时不能找到合适的类导制的错误。例如在运行时想调用某个类的方法或得访问这个类的静态成员的时候,发现这个类不可用。ClassNotFoundException是在编译的时候在classpath中找不到对应的类而发生的错误。
怎么解决
可能的原因:
(1)对应的class在java的classpath中不可用。
(2)因为NoClassDefFoundError是java.lang.LinkageError的一个子类,所以可能由于程序依赖的原生的类库不可用而导制的。
(3)可能程序是以jar命令运行的,但类并没有在jar文件的manifest文件中的classpath属性中定义。
(4)可能是由于静态初始化失败导制的。
(5)如果你工作在J2EE环境,有多个不同的类加载器,也可能导制这个问题。
最后欢迎大家访问我的个人网站:1024s