今天在运行一个Android项目的时候,报了以下错误:

D/AndroidRuntime( 3859): Shutting down VM
E/AndroidRuntime( 3859): FATAL EXCEPTION: main
E/AndroidRuntime( 3859): Process: com.runbo.outdoormeter, PID: 3859
E/AndroidRuntime( 3859): java.lang.NoClassDefFoundError: com.runbo.outdoormeter.LocationApplication$MyLocationListenner
E/AndroidRuntime( 3859): at com.runbo.outdoormeter.LocationApplication.<init>(LocationApplication.java:23)
E/AndroidRuntime( 3859): at java.lang.Class.newInstanceImpl(Native Method)
E/AndroidRuntime( 3859): at java.lang.Class.newInstance(Class.java:1215)
E/AndroidRuntime( 3859): at android.app.Instrumentation.newApplication(Instrumentation.java:990)
E/AndroidRuntime( 3859): at android.app.Instrumentation.newApplication(Instrumentation.java:975)
E/AndroidRuntime( 3859): at android.app.LoadedApk.makeApplication(LoadedApk.java:502)
E/AndroidRuntime( 3859): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4537)
E/AndroidRuntime( 3859): at android.app.ActivityThread.access$1500(ActivityThread.java:151)
E/AndroidRuntime( 3859): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1402)
E/AndroidRuntime( 3859): at android.os.Handler.dispatchMessage(Handler.java:110)
E/AndroidRuntime( 3859): at android.os.Looper.loop(Looper.java:193)
E/AndroidRuntime( 3859): at android.app.ActivityThread.main(ActivityThread.java:5322)
E/AndroidRuntime( 3859): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 3859): at java.lang.reflect.Method.invoke(Method.java:515)
E/AndroidRuntime( 3859): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:829)
E/AndroidRuntime( 3859): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645)
E/AndroidRuntime( 3859): at dalvik.system.NativeStart.main(Native Method)

我就纳闷了,因为此项目我丢在Android系统源代码中去编译,完全正常运行不报错。导入到Eclipse中调试程序就直接给我报这错误,坑爹啊。而这个MyLocationListenner是继承百度SDK中的

 com.baidu.location.BDLocationListener类,想来想去都想不出这错误报的所以然来。
而且在Eclipse视图中,完全没有任何提示说有错误,只是运行此APP就报错。如下图所示:

后来终于找到了解决方法,原来我丢在源代码中去编译的时候,Android.mk文件中,将这个jar包都加入进去了,都加载了所以不会报错。部分代码如下:
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := JAR_1:lib/android-support-v4.jar \
JAR_2:lib/locSDK_3.3.jar

解决方法如下所示:

1.项目根目录下新建一个libs文件夹

2.把要加的包放到这个目录下

3.右键 Build Path-> Use as source folder

4.在jar包上右键->add to build path

(注意,上面的是libs,不是lib)

如下图所示:

好了,问题解决,需要注意的地方就是这样。




                ====================================================================================

  作者:欧阳鹏  欢迎转载,与人分享是进步的源泉!

  转载请保留原文地址:http://blog.csdn.net/ouyang_peng

====================================================================================

    

我的Android进阶之旅------>Android项目运行报java.lang.NoClassDefFoundError错误的解决办法的更多相关文章

  1. idea存在包但是运行项目一直报java.lang.NoClassDefFoundError的问题

    以前做spark时候遇到过,今天高flink又遇到查了半天,这里记录下 1..idea->file->project structure->libraries->(左侧对话框这 ...

  2. 我的Android进阶之旅------>Android实现用Android手机控制PC端的关机和重启的功能(三)Android客户端功能实现

    我的Android进阶之旅------>Android实现用Android手机控制PC端的关机和重启的功能(一)PC服务器端(地址:http://blog.csdn.net/ouyang_pen ...

  3. 我的Android进阶之旅------>Android颜色值(#AARRGGBB)透明度百分比和十六进制对应关系以及计算方法

    我的Android进阶之旅-->Android颜色值(RGB)所支持的四种常见形式 透明度百分比和十六进制对应关系表格 透明度 十六进制 100% FF 99% FC 98% FA 97% F7 ...

  4. 我的Android进阶之旅------>Android中查看应用签名信息

    一.查看自己的证书签名信息 如上一篇文章<我的Android进阶之旅------>Android中制作和查看自定义的Debug版本Android签名证书>地址:http://blog ...

  5. 我的Android进阶之旅------>Android利用温度传感器实现带动画效果的电子温度计

    要想实现带动画效果的电子温度计,需要以下几个知识点: 1.温度传感器相关知识. 2.ScaleAnimation动画相关知识,来进行水印刻度的缩放效果. 3.android:layout_weight ...

  6. 我的Android进阶之旅------> Android为TextView组件中显示的文本添加背景色

    通过上一篇文章 我的Android进阶之旅------> Android在TextView中显示图片方法 (地址:http://blog.csdn.net/ouyang_peng/article ...

  7. 我的Android进阶之旅------> Android在TextView中显示图片方法

    面试题:请说出Android SDK支持哪些方式显示富文本信息(不同颜色.大小.并包含图像的文本信息),并简要说明实现方法. 答案:Android SDK支持如下显示富文本信息的方式. 1.使用Tex ...

  8. 我的Android进阶之旅------>Android疯狂连连看游戏的实现之实现游戏逻辑(五)

    在上一篇<我的Android进阶之旅------>Android疯狂连连看游戏的实现之加载界面图片和实现游戏Activity(四)>中提到的两个类: GameConf:负责管理游戏的 ...

  9. 我的Android进阶之旅------>Android疯狂连连看游戏的实现之加载界面图片和实现游戏Activity(四)

    正如在<我的Android进阶之旅------>Android疯狂连连看游戏的实现之状态数据模型(三)>一文中看到的,在AbstractBoard的代码中,当程序需要创建N个Piec ...

随机推荐

  1. Javascript - demo 与 捷径

    1.页面的后退.刷新.前进 function back(){ history.go(-1); // 后退 } function forward(){ history.go(+1); // 前进 1 页 ...

  2. silverlight 对ChildWindow返回给父窗体值的理解(转载)

    这篇文章是我对ChildWindow的理解,举例说明: 有时候在项目中需要弹出子窗体进行一些操作,然后将操作的值返回到父窗体中. 下图是子窗体的界面(比较粗糙....) 下面贴出其代码: 子窗体前台代 ...

  3. python 学习方法

    依据本人的学习经验,我总结了下面十点和大家分享: 1)学好python的第一步.就是立即到www.python.org站点上下载一个python版本号.我建议刚開始学习的人,不要下载具有IDE功能的集 ...

  4. codeforces #364b Cells Not Under Attack

    比赛的时候 long long sum=n*n,计算不出1e10长度到数,没有搞掉. 哎,以后要注意这个地方.这个题其实不难: 统计能被攻击到的个数,然后用总的个数减掉就可以了.注意有些地方重复计算, ...

  5. DataUml Design 介绍10 - DataUML 1.4版本功能(增加UML活动图和用例图)

    DataUml Design 1.4版本正式发布 1.解决软件自动关闭的问题 2.增加UML活动图和用例图功能 详细介绍稍后继续...........................

  6. 修改PHP session 默认时间方法

    修改三行如下: 1.session.use_cookies把这个的值设置为1,利用cookie来传递sessionid 2.session.cookie_lifetime这个代表SessionID在客 ...

  7. 如何添加、删除、合并PDF文件里的页面?

    使用Adobe Acrobat. Adobe中文官网http://www.adobe.com/cn/products/acrobat.html 能够自己下载破解版. watermark/2/text/ ...

  8. Crontab使用方式

    Liunx系统的定时任务需要Crontab来完成 一.添加 添加定时脚本 crontab -e 或者直接编辑/etc/crontab文件进行任务添加 vim /etc/crontab 二.格式 三.举 ...

  9. dm8148 开发之---sii9022a hdmi传输器

    SiI9022A -HDMI 发送器    照相机.摄影机和便携式媒体播放器的高清解决方案   SiI9022a是一款超低功耗的HDMI发送器,集成度更高, 电源管理特性也更强,适用于手提式消费电子设 ...

  10. C++调用Fortran程序----动态链接方式

    参考http://yxbwuhee.blog.sohu.com/143577510.html 一.C++动态调用Fortran DLL (1)创建FORTRAN DLL工程,生成forsubs.dll ...