首页 > 解决方案 > 找到 java.lang.NoClassDefFoundError 的真正原因

问题描述

我正在使用 spring boot 来启动一个使用 java8 的 RMI 服务器应用程序。在极少数情况下:

由于问题非常非常罕见,我无法重现它。

你将如何继续发现问题?

是否可以获得有关 NoClassDefFoundError 真正原因的更多信息?

标签: javanoclassdeffounderror

解决方案


java.lang.NoClassDefFoundError:

表示在类路径中找不到您尝试运行的类。

您需要将包含此类的类或 .jar 文件添加到 java 类路径中。

当编译器可以成功编译类,但 Java 运行时找不到类文件时会发生错误。它通常发生在执行静态块或初始化类的静态字段时出现异常,因此类初始化失败。

修复: 1.确保包含该类的类或jar 在类路径中是否可用。

2.classpath 然后很可能类路径被覆盖

3.如果一个应用程序使用多个类加载器,一个类加载器加载的类可能无法被其他类加载器使用。


推荐阅读