无法 运行 Java 使用 Apache Commons 编码

Unable to run Java code with Apache Commons

我编写了一个程序来从文本文件中读取数据并进行一些简单的计算,然后打印出这些计算结果。那部分效果很好。

之后,我添加了一些代码来使用 TTest class (org.apache.commons.math3.stat.inference.TTest) 进行 t 检验。因此,我从 Apache Commons 下载页面下载了 commons-math3-3.6.jar,并将 JAR 文件与我的其他 Java 程序代码放在同一个文件夹中。

我在Windows中使用以下命令编译,效果很好:

javac -cp ./commons-math3-3.6.jar ./FootballTeam.java ./Main.java

但我不知道如何正确 运行 该程序。我试过这个:

java Main

它完美地执行了 t 检验之前的所有操作,然后给出了预期的错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/math3/stat/inference/TTest at Main.main(Main.java:32) Caused by: java.lang.ClassNotFoundException: org.apache.commons.math3.stat.inference.TTest at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 1 more

我也试过这个:

java -cp commons-math3-3.6.jar Main

这给了我这个:

Error: Could not find or load main class Main

我一辈子都想不出如何在这里正确设置 class路径。有人可以给我一些帮助吗?谢谢!

无法找到 Main class,因为当前目录 (.) 不在您的 class 路径中。

要添加它,在 Windows:

java -cp ".;commons-math3-3.6.jar" Main

在 *n?x:

java -cp ".:commons-math3-3.6.jar" Main