-1
인스턴스의 클래스를 예측하고 싶습니다. 그러나 코드가 작동하지 않는 것 같습니다. weka에 관한 sourceforge에서 제공하는 설명서를 따라합니다.자바에서 weka.jar 사용
public class Main{
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(
new FileReader("file.arff"));
Instances data = new Instances(reader)
data.setClassIndex(data.numAttributes() - 1);
Instance i1=data.instance(0);
data.delete(0);
Classifier ibk = new IBk();
ibk.buildClassifier(data);
double class1 = ibk.classifyInstance(i1);
System.out.println("Classification ==================>");
System.out.println("Instance 1 " + class1);
}
buildClassifier 함수를 호출 할 때 문제가 발생합니다.
Exception in thread "main" java.lang.NoClassDefFoundError: org/bounce/net/DefaultAuthenticator
at weka.core.WekaPackageManager.<clinit>(WekaPackageManager.java:99)
at weka.core.Utils.readProperties(Utils.java:174)
at weka.core.Capabilities.<init>(Capabilities.java:275)
at weka.classifiers.AbstractClassifier.getCapabilities(AbstractClassifier.java:508)
at weka.classifiers.lazy.IBk.getCapabilities(IBk.java:458)
at weka.classifiers.lazy.IBk.buildClassifier(IBk.java:488)
at weka.netbeans.Main.main(Main.java:33)
Caused by: java.lang.ClassNotFoundException: org.bounce.net.DefaultAuthenticator
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 7 more
Gradle 또는 Maven과 같은 종속성 관리 프레임 워크를 사용하여 weka의 종속성을 자동으로 가져 오게하는 것이 좋습니다. –
누락 된 병을 추가했지만 여전히 작동하지 않습니다. – sali333