2010-08-23 70 views
2

我创建了一个新库,并添加了网页收集器的罐子,在我的android项目中做了一些网页抓取。在我的主要活动中,我导入了我需要的类。但在我的手机上启动项目我得到一个从外部罐子导入类,Android

08-23 08:28:09.763:错误/ dalvikvm(2123):无法找到类'org.webharvest.definition.ScraperConfiguration',从方法html引用。 parser.MainActivity.onCreate

有什么想法?

+0

你是否自己创建了lib包,或者使用了eclipse IDE? – Praveen 2010-08-23 06:37:08

+0

@Praveen其实我遵循这些说明http://www.cuteandroid.com/tips-for-android-developer-conversion-to-dalvik-format-failed-unable-to-execute-dex-null因为我有一个关于在Android项目中使用外部罐子的奇怪问题,但是我用eclipse – 2010-08-23 07:10:53

+0

[NoClassDefFoundError Android](http://stackoverflow.com/questions/8678630/noclassdeffounderror-android) – Flow 2013-12-10 14:41:06

回答

3

看看这里 http://developer.android.com/guide/appendix/faq/commontasks.html#addexternallibrary 你是否把jar放在你项目的子文件夹中?

+0

好吧我创建了一个用户库,就像在你的链接中描述,我可以访问lib中的类并在我的代码中使用它们。但是当我运行该项目时出现错误。所以看起来这些类在运行时缺失 – 2010-08-23 13:38:18

+0

您可以使用这些类,因为您将该jar包含在eclipse构建路径中,并且您得到了错误,因为该jar没有导出到.apk文件中。从项目的根目录创建libs文件夹,并将jar放在那里,eclipse插件应该自动将它导出到.apk文件中。 – 2010-08-23 14:27:56

+0

我该如何做到这一点? – 2010-08-23 18:29:01

4

我有一个jar没有导出到apk的问题。我手动编辑.classpath并将其导出为“true”给classpatterntry;似乎已经解决了我的类似问题。

<classpathentry kind="lib" exported="true" path="lib/gson-1.7.1.jar"/> 
+0

哦哇,我不能够感谢你,我遇到了同样的问题,我使用了这个修复程序,清理并构建了我的项目,现在我又恢复正常运行了,谢谢! :-D – Jared 2012-05-01 22:56:26

+0

你救了我一天!我希望我可以两次上你! – 2012-05-14 20:43:01

+0

男人,我非常爱你! – kolobok 2012-09-01 08:29:17

3

那么,首先要检查该库是否有正确的Java版本。 android只支持1.6而不是1.7(SDK依赖,但如果你希望它在2.33下工作,使用1.6)。之后,只需将文件拖到libs文件夹,然后选择复制。然后,单击项目属性(右键单击项目 - >属性) - > java build path-> libraries选项卡。在此选项卡中单击添加JAR 而不是添加外部JAR。从libs文件夹下的项目中选择jar文件。 如果您仍然收到错误,请确保您的jar文件java版本是1.6。