[英]Android java.lang.NoClassDefFoundError
我在eclipse IDE中有一个Android项目正在运行。 经过一些导入和测试后,我得到错误: java.lang.NoClassDefFoundError
。
在我的项目中,我有两个包:主要的一个,第二个包含一些类。
当我尝试从主活动类中的第二个包类实例化一个对象时,我收到此错误。
这是logcat:
FATAL EXCEPTION: main
java.lang.NoClassDefFoundError: com.neurospeech.wsclient.MDPIforEditorialBoard
at milos.mdpi.Journals.<init>(Journals.java:41)
at java.lang.Class.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:1409)
at android.app.Instrumentation.newActivity(Instrumentation.java:1040)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1777)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1893)
at android.app.ActivityThread.access$1500(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1054)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:150)
at android.app.ActivityThread.main(ActivityThread.java:4389)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607)
at dalvik.system.NativeStart.main(Native Method)
找到我的问题的解决方案:
解决方案可以在这里找到: http : //android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17
你最近更新了你的eclipse安卓插件(adt r17)吗? 然后以下链接可能会有所帮助:
如何使用adt-17修复classdefnotfounderror
更新:问题出现一年过去了。 我会保留链接,因为即使在2013年,它似乎也可以帮助一些人解决问题。 但是请注意你正在做的事情,请参阅下面的Erics评论。 目前的ADT版本是22,我建议使用最新版本。
按此顺序编辑构建路径,这对我有用。
确保/gen
在/src
之前
我通过在这里添加要导出的主项目的私有库来解决问题:
Project Properties->Java Build Path->Order And Export
并确保选中Android私有库。
截图:
确保选中google-play-services_lib.jar
和google-play-services.jar
。 清理项目并重新运行,classNotfound异常消失。
转到订单并从项目属性导出,并确保您在导出中包含所需的jar,这对我来说
我曾经遇到过这个问题几次打开包含其他Android库的旧项目。 对我有用的是:
将Android移至Order and Export选项卡中的顶部并取消选择它。
是的,这确实有所不同。 也许是时候让我放弃ADT for Android Studio了!
如果您尝试包含使用jdk 1.7而不是1.6编译的jar,也可能会出现此错误。
在我的情况下,我想通过尝试使用SDK提供的Ant脚本而不是ADT来打包我的应用程序,并且我注意到这些错误,ADT没有告诉我:
[dex] Pre-Dexing libjingle_peerconnection.jar -> libjingle_peerconnection-2f82c9bf868a6c58eaf2c3b2fe6a09f3.jar
[dx]
[dx] trouble processing:
[dx] bad class file magic (cafebabe) or version (0033.0000)
[dx] ...while parsing org/webrtc/StatsReport$Value.class
[dx] ...while processing org/webrtc/StatsReport$Value.class
我用jdk 1.6重新编译了我的jar并修复了错误。
尝试进入Project -> Properties -> Java Build Path -> Order & Export
并确认Android私有库将检查您的项目以及您在应用程序中使用的所有其他库项目。
检查Java构建路径后,然后在清单文件中添加代码行。
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.