Я новичок в Android, даже новичок в Java. Я также новичок в SO, поэтому я не могу опубликовать более двух ссылок, извините: /. Мне нужно использовать объект LibSVM, содержащийся в библиотеке JavaML (java-ml.sourceforge.net), и каждый раз, когда я хочу его использовать, я импортирую libsvm.LibSVM
(без сбоев там) и используйте LibSVM test = new LibSVM();
. В этот момент мое приложение падает с NoClassDefFoudError
:Добавить JavaML-библиотеку в Android-проект
05-31 16:25:42.692 1353-1353/myapp E/dalvikvm: Could not find class 'libsvm.LibSVM$1', referenced from method libsvm.LibSVM.<clinit>
05-31 16:25:42.692 1353-1353/myapp E/dalvikvm: Could not find class 'libsvm.svm_parameter', referenced from method libsvm.LibSVM.<init>
05-31 16:25:42.692 1353-1353/myapp E/dalvikvm: Could not find class 'libsvm.svm_node[]', referenced from method libsvm.LibSVM.convert
05-31 16:25:42.702 1353-1353/myapp E/dalvikvm: Could not find class 'libsvm.svm_problem', referenced from method libsvm.LibSVM.transformDataset
05-31 16:25:42.732 1353-1353/myapp E/InputEventReceiver: Exception dispatching input event.
05-31 16:25:42.732 1353-1353/myapp E/MessageQueue-JNI: Exception in MessageQueue callback: handleReceiveCallback
05-31 16:25:42.747 1353-1353/myapp E/MessageQueue-JNI: java.lang.NoClassDefFoundError: libsvm.LibSVM$1
at libsvm.LibSVM.<clinit>(LibSVM.java:28)
at myapp.TouchDisplayView.onTouchEvent(TouchDisplayView.java:159)
... stacktrace
Я прочитал How do I add a library project to Android Studio?, How to add classpath in an Android Studio project, но он не работает (для последнего, я застрял на шаге 5, потому что Android-студия не признает свою .jar когда создание нового модуля).
Я добавил compile files("libs/javaml/javaml-0.1.7.jar")
в моем build.gradle
, а также все файлы из javaml/lib/
«для большего удобства», как док говорит (java-ml.sourceforge.net/content/installing-library). Затем постройте чистоту и перестройте. Еще нет.
Что для меня странно, так это то, что Android Studio не имеет проблем с поиском классов, но по какой-то причине мой телефон попросил отличиться.
Мое дерево до сих пор: i.stack.imgur.com/P2DY4.png
Я был бы очень рад, если кто-то может дать мне представление о том, как действовать. Заранее спасибо!