【问题标题】:Java Exception java.lang.NoClassDefFoundErrorJava 异常 java.lang.NoClassDefFoundError
【发布时间】:2015-04-02 16:37:39
【问题描述】:

我在同一个包中创建了 2 个辅助类,其中一个用于 constants,另一个用于 methods,它们位于一个名为 ' 的项目中>逻辑'

我在另一个名为“Tools”的项目中使用这些类。 “Tools”项目中的类可以在runtime中查看和访问constants class,但在中看不到methods class >runtime 并抛出 java.lang.NoClassDefFoundError 异常,尽管它们在代码中都可以看到和访问,并且项目编译时没有错误。

【问题讨论】:

  • 请发布您的代码。
  • 项目可以编译,但在运行时这些 jars 需要在类路径中可用。否则你会得到这个异常
  • 嘿@SufyanTamadan,欢迎来到 SO!为了让我们为您提供帮助,我建议您阅读有关 How do I ask a good question 的帖子,以确保您得到想要的答案。
  • 你是如何运行你的代码的?
  • 我检查了依赖项和类路径,它们已经添加到“工具”项目中。

标签: java noclassdeffounderror


【解决方案1】:

根据我的经验,NoClassDefFoundError 最可能的原因是类的静态初始化错误。

当 java 第一次加载一个类时,会执行静态初始化程序。如果在此期间发生异常,则会引发 NoClassDefFoundError。所以在第一个 NoClassDefFoundError 之前可能有一个监督异常。

NoClassDefFoundError 之前的这个异常也可以是 ClassNotFoundException。

【讨论】:

  • 非常感谢@Joachim。这是问题的原因,我解决了。
猜你喜欢
  • 1970-01-01
  • 2018-07-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多