java - Weka DiscriminantAnalysis NoClassDefFoundError -


i'm trying use multiclassflda in discriminant analysis package error on running code , defining new instance of multiclassflda class

exception in thread "main" java.lang.noclassdeffounderror: no/uib/cipr/matrix/vector     @ assignment2.face.trylda(face.java:141)     @ assignment2.assignment2.main(assignment2.java:106) caused by: java.lang.classnotfoundexception: no.uib.cipr.matrix.vector     @ java.net.urlclassloader.findclass(urlclassloader.java:381)     @ java.lang.classloader.loadclass(classloader.java:424)     @ sun.misc.launcher$appclassloader.loadclass(launcher.java:331)     @ java.lang.classloader.loadclass(classloader.java:357) 

it seems linked dynamic class loading in newer versions of weka, presumably within weka package manager: class defined in mtj.jar, bundled inside weka.jar. in that other question, an answer suggested extract mtj.jar , add classpath.

as didn't have problem other filters, guess multiclassflda not implemented correctly: found out if use filter before, specific class loaded:

// run dummy filter correct initialization filter f = new standardize(); f.setinputformat(data); filter.usefilter(new instances("", params, 0), f); // dummy run on empty dataset // run multiclassflda f = new multiclassflda(); f.setinputformat(data); data = filter.usefilter(data, f); 

n.b. ugly hack! used able work. i'll edit answer when find appropriate way (other extracting jar weka itslef).


Comments