【发布时间】:2016-09-29 16:05:19
【问题描述】:
我是 Android 新手,甚至是 Java 新手。我也是 SO 新手,所以我不能发布超过 2 个链接,抱歉:/。我需要使用包含在 JavaML 库 (java-ml.sourceforge.net) 中的 LibSVM 对象,并且每次我想使用它时,我都会导入 libsvm.LibSVM(那里没有失败),然后使用 LibSVM test = new LibSVM();。此时我的应用程序崩溃了NoClassDefFoudError:
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 Studio 在创建新模块时无法识别我的 .jar)。
我在build.gradle 中添加了compile files("libs/javaml/javaml-0.1.7.jar"),还添加了javaml/lib/ 中的所有文件,“为了更方便”,正如文档所说(java-ml.sourceforge.net/content/installing-library)。然后构建干净,然后重建。还是不行。
让我感到奇怪的是,Android Studio 可以轻松找到课程,但由于某种原因,我的手机却不一样。
到目前为止我的树:i.stack.imgur.com/P2DY4.png
如果有人能告诉我如何进行,我将非常高兴。提前致谢!
【问题讨论】:
标签: java android android-studio-2.0