转自:http://blog.csdn.net/jseven1989/article/details/8743147
--------------------
今天写一个Android程序时需要用到第三方Jar包,报了一个错误java.lang.NoClassDefFoundError:org.ksoap2.transport.HttpTransportSE。
查了一下资料,除了在Build Path中添加Jar包的引用是不够的,还需要讲该包加入到Source Folder。
解决办法:
1、在项目根目录建一个lib目录,讲Jar包负责到lib目录中,
2、在项目右键Build Path的Add External Arch…添加lib中的Jar包
3、在项目右键Build Path的Configure Build Path的Source页标签点击Add Folder按钮,将lib目录勾选
再次运行就不出现异常了,但bin目录生成的apk文件胖了不少。
--------------------------
每当导入别人项目的时候,经常出现错误提示Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tool
这是因为Java编译器的版本不正确,所以Android项目在Eclipse中会报@Overrider错误。
Java 1.5编译器默认对父类的方法进行覆盖,采用@Override进行说明;但到了1.6已经扩展到对接口的方法,所以如果还是以Java1.5编译器来编译就会出现错误。
前几次还傻傻删@Override,后来发现不是办法所以找到以下方法
解决方法:
1、项目右键—> android tools——>Fix Project
2、项目右键—> Properties—>Java Compiler,确定Compiler compliance level设置为1.6,并确定勾选enable specific seetings
-----------------------------------
在运行android应用程序时可能会出现java.lang.NoClassDefFoundError: org.bouncycastle.crypto.engines.RSAEngine这样的问题,导致程序运行直接崩溃掉。
原因:在android高版本的SDK里面有Android Dependencies 这个目录,它会将你引用的第三方jar包放置该目录下,这样才能引用你所加的类库,但是当导入别人的应用程序时,有可能别人是在低版本的SDK上开发的,并没有Android Dependencies这个目录,所以当不能自动生成Android Dependencies目录时,你必须手动作修改。修改如下:打开工程的classpath文件,添加<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>这样的一行代码,之后clean程序,如还没能生成Android Dependencies 目录,重启一下eclipse即可完成!!!
--------------------------------------------
The builder launch configuration could not be found| Unable to resolve target 'Google Inc.:Google APIs:10'
今天导入别人项目时遇到3个问题,解决办法如下
1.com.google cannot be resolved
到android的sdk下的add-on里找到map.jar,(不同版本的命名可能不同),我的路径为
E:\Android\android-sdk\add-ons\addon-google_apis-google-15\libs\map.jar。
导入后记要在build path中的order and export选中该包
2. Unable to resolve target 'Google Inc.:Google APIs:10'
修改目录下的project.property文件内容为
target=Google Inc.:Google APIs:15(注意1中,我导入的是api15,而项目原本是api10的)
3.不能生产R文件,看detail显示为
The builder launch configuration could not be found.
原来是build path中的order and export勾选了不存在的jar包,所以要去掉不能识别的jar包。