从命令行运行 weka - 找不到类 NaiveBayes
Posted
技术标签:
【中文标题】从命令行运行 weka - 找不到类 NaiveBayes【英文标题】:Running weka from command line - cannot find class NaiveBayes 【发布时间】:2011-08-21 20:24:30 【问题描述】:我正在尝试从命令行运行 Weka 分类,但我的代码:
java weka.classifiers.bayes.NaiveBayes -t file1.arff -T file2.arff -p
出现错误信息:
“找不到主类:weka.classifiers.bayes.NaiveBayes。程序将退出。”
我在包含 weka.jar 的目录中运行命令。 怎么找不到分类器?
【问题讨论】:
【参考方案1】:WEKA 的自述文件
路径解决方案
你可以修改你的~/.bash_profile
export R_HOME="/Applications/R.app/Contents/MacOS/R" #for WEKA MLR R plugin
export CLASSPATH="/Applications/weka-3-9-1/weka.jar" #for WEKA commandline
export WEKAINSTALL="/Applications/weka-3-9-1"
export WEKA_HOME="/Applications/weka-3-9-1"
export CLASSPATH=$CLASSPATH;$WEKA_HOME/weka.jar
export HEAP_OPTION=-Xms4096m -Xmx8192m
export JAVA_COMMAND java $HEAP_OPTION
然后你应该可以运行了
java weka.classifiers.bayes.NaiveBayes -t $WEKAINSTALL/data/iris.2D.arff -T $WEKAINSTALL/data/iris.2D.arff
【讨论】:
【参考方案2】:尝试添加一个显式的类路径,例如
java -cp ./weka.jar weka.classifiers.bayes.NaiveBayes -t file1.arff -T file2.arff -p
有些JVM不会推断出你需要的jar文件在当前目录下。
【讨论】:
以上是关于从命令行运行 weka - 找不到类 NaiveBayes的主要内容,如果未能解决你的问题,请参考以下文章
WEKA - 多类分类 - 找不到名为:weka.classifiers.functions.supportVector.RegSMOImproved 的类