繁体   English   中英

NoClassDefFoundError 与 Apache 公共数学

[英]NoClassDefFoundError with Apache commons math

我想使用来自 Apache Commons 的 PoissonDistribution,但总是收到错误NoClassDefFoundError

代码:

import org.apache.commons.math3.distribution.PoissonDistribution;

public class Test {

    public static void main(String[] args) {
        PoissonDistribution p = new PoissonDistribution(5.0);

    }

}

错误信息:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/math3/distribution/PoissonDistribution
    at Test.main(Test.java:6)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.math3.distribution.PoissonDistribution
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 1 more

到目前为止我所做的: commons-math3-3.6.1.jar 文件位于我的项目文件夹内的一个文件夹中,通过Project->Properties->Java Build Path->Libraries我添加了 JAR 文件,然后在“旁边的“订购和导出”选项卡我选择了 jar 文件。

谢谢你的帮助!

好的,巧合的是,我找到了解决方案:

我的问题是我将 JAR 添加到 Modulepath 而不是项目属性中的 Classpath。

就我而言,我忘记了添加 Apache 库的一部分是名称:commons-math3-3.6.1.jar

确保您的 PoissonDistribution class 在 Java 类路径中可用。 我猜你的 jar 不会正确添加 jar。

添加以下步骤以添加 jar:

  • Eclipse 通过右键单击项目
  • 构建路径
  • 添加外部 JARs。
  • 并给出Jar。
  • 好的

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM