zoukankan      html  css  js  c++  java
  • Conversion to Dalvik format failed with error 1(android)

    1。如果不修改android sdk版本,则使用project clean 命令作用于某工程即可。

    (该处理方式只是在高版本中兼容了低版本工程,未真正意义上的升级)

    2。如果修改android sdk版本,则需要以下几个步骤:

    1)修改SDK

    选择工程,buildpath --> configure build path ---> library 删除引用的低版本SDK,

    然后add ExternalJARs,选择高版本SDK,OK,保存

    2)修改classpath文件

    该文件可能存在该项:<classpathentry kind="lib" path ="你所指定的高版本的地址"

    把她修改成<classpathentrykind="con"path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK" />

    3) 修改AndroidManifest.xml

    在AndroidManifest.xml文件中,application标签后添加<uses-sdkandroid:minSdkVersion="3"></uses-sdk>

    4) 修改default.properties(很重要)

    该文件最后一行(前面没用#的)target=android-3 该成target=android-8,保存。

    再看看你的工程和新建的android2.2的工程结构就一样了。

    3.在eclipse开发Android项目时出现的很多问题都可以使用Project--------->clean来轻易解决。

    但如果出现说Android库找不到,或者不小心remove了Android系统库,怎么重新添加Android系统库呢?

    在eclipse里面的Java Build Path里面是没法添加例如Android 2.1这样定义好的系统库。而我尝试手动添加

    SDK 文件夹里面的Android.jar,结果出现了Conversion to Dalvik format failed with error 1问题了。折腾了

    一番后,很多网友都说用Projectclean可以解决,但对我的情况来说,没有用处。

    解决方法:

    修改项目classpath文件,这让我明白了,直接从其他正常项目里面把

    <!-- 注意,这个.classpath文件在eclipse工作空间的硬盘存放位置对应工程项目目录下面 -->

    <classpathentry kind="lib"path ="自定义jar的地址" />

    修改成

    <classpathentry kind="con"path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>。

    这样子刷新项目,Android系统库Android 2.1回来了,那个错误也解决了。

    --------------------------------------------------------------------------------------------------------------------------

    这几天又遇到这样的问题了,但是.classpath文件里面已经包含了上面的con Path,后来在论坛上找到新方法:

    project -> properties -> androidlabel, check a target from the project build target list

    <!-- 这样有时候还是不能去掉错误,这时候注意,在进入project-> properties -> android后,下面有

    一个is library项,把它勾上,再点击确定错误就OK了,我的错误就是这样解决的,一开始按照上面

    以及后面的方法都解决不了,最后我看到有一个is library项,把它勾上再确定试一下OK,错误没了 -->

    (这个is library是表示是不是库的意思,如果实在没有别的办法的时候再试试,具体根据自己的情况)

    4.还有一种情况:包冲突,请到工程目录下将相同的包删除,重新导入一个,这一点和第一种情况类似,不过这是针对其他包,不是android包

    解决办法:Java Build Path->Libraries->JARs and class folders on thebuild path

    看是否有相同的jar包 有些jar包版本同定 不一定是android的jar包 其他类库的jar包也会造成这样的错误

    上次signpost-core-1[1].2.1.1.jar和signpost-core-1.2.1.1.jar冲突了就出现这样的错误所以你看一下是否有相同的jar包

    之前比较纠结的就是第四种情况,我从别人那考来了一个andengine游戏引擎的代码,我把他的libs文件夹设置成source folder,后来又把里面的各个jar包add to buildpath,后来就出现了题目的问题,查了很多解决办法,都没有解决,后来仔细观察发现我的问题和第四点比较像,就把其中的jar全部移除了,然后重新加载一次,这下解决了,哈哈,这里把方法汇总贴出来,方便查看。

  • 相关阅读:
    通过HttpListener实现简单的Http服务
    WCF心跳判断服务端及客户端是否掉线并实现重连接
    NHibernate初学六之关联多对多关系
    NHibernate初学五之关联一对多关系
    EXTJS 4.2 资料 跨域的问题
    EXTJS 4.2 资料 控件之Grid 那些事
    EXTJS 3.0 资料 控件之 GridPanel属性与方法大全
    EXTJS 3.0 资料 控件之 Toolbar 两行的用法
    EXTJS 3.0 资料 控件之 combo 用法
    EXTJS 4.2 资料 控件之 Store 用法
  • 原文地址:https://www.cnblogs.com/akiha/p/5783069.html
Copyright © 2011-2022 走看看