【发布时间】:2013-06-23 09:00:10
【问题描述】:
我有一个导入一些 Weka 包的 Java 程序。我基本上使用“javac -classpath CLASSPATH:weka.jar program_name.java”命令编译它,一切都很好。
当我使用“java -Xmx2024m -classpath CLASSPATH:weka.jar program_name”运行它时,程序抛出“NoClassDefFound”错误,指出找不到主类“program_name”!
这个问题真的很令人费解,因为编译成功了,而且文件夹中存在 program_name.class 文件。 weka.jar 也存在。
谁能告诉我我做错了什么?
谢谢!
【问题讨论】:
-
您是否在 CLASSPATH 声明的前面缺少 $ (或 % 取决于操作系统)?
-
创建
program_name.class的目录需要在类路径中,例如-classpath .:$CLASSPATH:weka.jar如果它在当前目录中。 -
感谢您的回访! "$" 引发错误。我尝试了 Java Devil 的建议,但仍然收到 NoClassDefFound 消息。当我使用 Eclipse (Windows) 运行该程序时,该程序运行良好。当我尝试从终端运行它时,我遇到了这个问题。
-
java -Xmx2024m -classpath %CLASSPATH%:.:
/weka.jar program_name 怎么样。 -
我试过了,但我仍然遇到同样的问题,Dave。为了让我的解释更清楚一点,我将 Java 程序放在 weka-3-7-9 目录中(weka.jar 也在同一目录中)。我看到编译时正在创建类文件,但我只是不明白为什么它无法识别类文件。