Weka из командной строки

Я пытаюсь запустить пакет Weka ML из командной строки без появления графического интерфейса. Я пытался:

java -jar "\C:\Program Files\Weka-3-6\weka.jar"

Это приводит к инициализации апплета и ничего больше. Поэтому я добавил аргументы, относящиеся к моей проблеме:

java -jar "\C:\Program Files\Weka-3-6\weka.jar"
weka.classifiers.functions.MultilayerPerceptron
-t data.arff -T test.arff 2> y.txt

Все на одной строчке, но для ясности разбиты. Это действительно генерирует некоторый вывод в y.txt, поскольку мне нужно будет прочитать его позже, но он дает:

---Registering Weka Editors---
Trying to add database driver (JDBC): RmiJdbc.RJDriver - Error, not in CLASSPATH?
Trying to add database driver (JDBC): jdbc.idbDriver - Error, not in CLASSPATH?
Trying to add database driver (JDBC): org.gjt.mm.mysql.Driver - Error, not in CLASSPATH?
Trying to add database driver (JDBC): com.mckoi.JDBCDriver - Error, not in CLASSPATH?
Trying to add database driver (JDBC): org.hsqldb.jdbcDriver - Error, not in CLASSPATH?

Вышесказанное меня не беспокоит, потому что JDBC связано с базой данных, а я не имею дела с этим. Но после этого:

java.lang.NullPointerException
weka.gui.GUIChooser.showExplorer(GUIChooser.java:1099)
weka.gui.GUIChooser.main(GUIChooser.java:1371)

at weka.gui.GUIChooser.showExplorer(GUIChooser.java:1099)
at weka.gui.GUIChooser.main(GUIChooser.java:1371)

И я не знаю, как продолжить. Есть ли у кого-нибудь опыт работы с Weka?


person aquemini    schedule 13.06.2013    source источник


Ответы (1)


Вам нужно узнать, как работают java командные строки. :-) Ваш вопрос касается Java, а не специфичен для Weka.

java -cp weka.jar weka.classifiers.functions.MultilayerPerceptron

работает для меня. Обратите внимание на разницу между -cp и -jar. Последний будет запускать «основной» класс, как указано в .jar, но здесь вы хотите вручную указать основной класс в качестве первого параметра.

person Has QUIT--Anony-Mousse    schedule 13.06.2013
comment
Вы правы в этом ... Я сам занимаюсь Linux. Я попробую, спасибо. - person aquemini; 13.06.2013