HardBirch

android中ADT版本问题: java.lang.NoClassDefFoundError和conversion to dalvik format failed with error 1错误

时间:12-05-09 栏目:安卓源码解析与小应用 作者:张飞不张,文采横飞 评论:5 点击: 4,358 次

        最近在ubuntu上面配置android开发环境时候出现n多错误,把心得说一下,如果遇到类似错误,修改下就好了,到目前为止,ADT的版本已经升级到18了。当SDK版本升级到4.0.3的时候,会要求ADT版本是17或者更高的版本,当升级以后,如果出现问题,有可能是JDK版本的问题,注意一下,ADT17要求JDK版本必须在JDK1.6或者更高版本。

       当ADT的版本是17或者更高的时候,如果项目中引用了第三方jar包,会出现java.lang.NoClassDefFoundError这个错误,发现不了jar包里面被引用的类。如何修改呢?在eclipse中,引用的第三方jar包都放在lib下,把lib修改成libs,就可以了,有人可能会问,没有lib文件夹,那就新建一个libs文件夹,把第三方类库放到该文件夹中,这时候会报错,需要重新build path下,



clean下代码,应该就可以了。

如果对这个文章不太满意,建议搜索的时候搜一下关键字:

android adt  java.lang.NoClassDefFoundError

而非直接 java.lang.NoClassDefFoundError

因为后者搜索大部分内容是讲的j2se和j2ee里面的问题。

今天早晨继续编译,发现出现conversion to dalvik format failed with error 1错误,如果遇到此问题,先clean下,如果没有解决,打开build path的 configure build path ,如上图,看看有没有重复的jar包,有的话,删除重复包。就可以了。

有问题欢迎留言探讨。



      有时候,可能会出现导入包和android包有冲突这种现象,在项目上也没有报错,但是运行时报conversion to dalvik format failed with error 1这个错误,很少见。如果遇到这个错误,上面方法解决不了,试着新建一个项目,不写代码,把包导入进去,运行检查是否报错,如报错,删除其中一包,再运行检查,这样可能找到出现冲突的包。

android中ADT版本问题: java.lang.NoClassDefFoundError和conversion to dalvik format failed with error 1错误:目前有5 条留言

  1. 5楼
    csc2010888:

    您好 我也出现这个情况了啊 不过我是加入百度网盘时出现,按你的方法没用 。 我不清楚为啥我加的jar包会默认加入到 Refernced Libraries 这个库里 而不是加入 Aandoroid Dependncies 这个库里 求解决方案…

    2012-06-20 13:04 [回复]
  2. [reply]csc2010888[/reply]
    选择 add jars后选中你所需要的包,然后clean 还是报java.lang.NoClassDefFoundError这个错吗??

    2012-06-20 14:29 [回复]
  3. 选择 add jars后选中你所需要的包,然后clean 还是报java.lang.NoClassDefFoundError这个错吗??

    2012-06-20 14:29 [回复]
  4. 板凳
    Gitxs:

    楼主 v5 解决问题 .. thx啦

    2012-08-22 15:01 [回复]
  5. [reply]Gitxs[/reply]
    能解决问题就好。。。

    2012-08-22 16:01 [回复]

发表评论


QQ群互动

Linux系统与内核学习群:194051772

WP建站技术学习交流群:194062106

魔豆之路QR

魔豆的Linux内核之路

魔豆的Linux内核之路

优秀工程师当看优秀书籍

优秀程序员,要看优秀书!

赞助商广告

友荐云推荐