java.lang.NoClassDefFoundError:ADT 17已知问题

时间:2012-04-07 23:18:44

标签: java android adt noclassdeffounderror wsimport

我正在使用android sdk中的wsimport.exe,并手动导入(在输出类中拖动)到我的项目中(没有外部jar - 导入的文件是src文件夹的一部分)。

它在java测试项目中运行良好,但是当我尝试在android项目上实现它时,我面临着这个奇怪的问题。我已经阅读了有关ADT 17更改的已知问题的一些信息,但这些都与外部罐子重新排序有关。我没有进口任何罐子,所以它与我无关。

有人知道这是否是ADT 17问题的一部分?

这是我的logcat:

04-06 02:07:09.340: E/AndroidRuntime(13308): java.lang.NoClassDefFoundError: org.tempuri.Service1
04-06 02:07:09.340: E/AndroidRuntime(13308):    at hhs.pack.ListViewActivity.getListFromDB(ListViewActivity.java:72)
04-06 02:07:09.340: E/AndroidRuntime(13308):    at hhs.pack.ListViewActivity.onCreate(ListViewActivity.java:40)

2 个答案:

答案 0 :(得分:0)

问题可能是apk工具忽略了这些类,或者Eclipse不知道与class文件有关(我会稍微解释一下)。你为什么不用你的班级创建一个jar?在eclipse中,您可以右键单击包含类的项目并说出Export> Java> Jar

如果不可能,请尝试将您生成的课程移至bin> classes文件夹,而不是将其保留在源文件中(除非你设置了eclipse,以便将类保存在与不是默认选项的源相同的文件夹中。使用此选项可以解决您的问题)。

您可以尝试在Project>下的eclipse中启用允许输出文件夹中的源文件夹选项Properties> Java Build Path> Source

如果您生成jar otpion,那么您在源代码中使用的jar应位于Android项目的libs文件夹中,否则不会随应用程序打包。我注意到在旧版ADT的某些版本中,您还必须将jar添加到项目库中。

这就是我所能提出的建议,我总是在像你这样的情况下创造我自己的罐子。

答案 1 :(得分:0)

您是否通过此链接查看了相关信息? http://tools.android.com/recent/dealingwithdependenciesinandroidprojects