Запуск weka из командной строки - не удается найти класс NaiveBayes - PullRequest
3 голосов
/ 09 мая 2011

Я пытаюсь запустить классификацию Weka из командной строки, но мой код:

java weka.classifiers.bayes.NaiveBayes -t file1.arff -T file2.arff -p

появляется сообщение об ошибке:

"Не удалось найти основной класс: weka.classifiers.bayes.NaiveBayes. Программа завершит работу."

Я запускаю команду в каталоге, содержащем weka.jar. Почему это не может найти классификатор?

Ответы [ 2 ]

5 голосов
/ 15 мая 2011

Попробуйте добавить явный путь к классу, например

java -cp ./weka.jar weka.classifiers.bayes.NaiveBayes -t file1.arff -T file2.arff -p

Некоторые JVM не делают вывод, что нужный вам файл JAR находится в текущем каталоге.

0 голосов
/ 30 июля 2017

Readme WEKA

enter image description here

Решение пути

Вы можете изменить ~/.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 
...