`
xiaozilong88
  • 浏览: 24127 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Conversion to Dalvik format failed with error 1

 
阅读更多
最近发现公司换了新电脑后,在项目加入混淆之后,导出都会提示

    Conversion to Dalvik format failed with error 1 


从网上看到的都是转来转去的解决方法:

    android低版本工程(如1.5)放到高版本环境中(如2.2)可能会上述错误,解决方法如下: 
    1。 如果不修改android sdk版本,则使用project clean 命令作用于某工程即可。 
           (该处理方式只是在高版本中兼容了低版本工程,未真正意义上的升级) 
    2。 如果修改android sdk版本,则需要以下几个步骤: 
           1)修改SDK 
                 选择工程,build path --> configure build path ---> library 删除引用的低版本SDK, 
                 然后add External JARs,选择高版本SDK,OK,保存 
            2)修改classpath文件  
                 该文件可能存在该项: <classpathentry kind="lib"   path ="你所指定的高版本的地址" 
                 把她修改成<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK" /> 
            3) 修改AndroidManifest.xml 
                 在AndroidManifest.xml文件中,application标签后添加<uses-sdk android:minSdkVersion="3"></uses-sdk> 
            4) 修改default.properties(很重要) 
                  该文件最后一行(前面没用#的)target=android-3 该成target=android-8,保存。 
            再看看你的工程和新建的android 2.2的工程结构就一样了。 



这个就解决不了我这问题。

接着我重新下载eclipse,并新建一个项目,发现也一样导出不了。
最终在一篇文章中让我解决了这问题,这是android-sdk_r12 的问题,如下:

    http://stackoverflow.com/questions/6605971/android-sdk-tools-revision-12-has-problem-with-proguard-error-conversion-to-d 

我采用的解决方法是:

    http://code.google.com/p/android/issues/detail?id=18359 


android-sdk-windows\tools\proguard\bin目录找到:

    proguard.bat 



用记事本打开,内容如下:

    @ECHO OFF 
     
    REM Start-up script for ProGuard -- free class file shrinker, optimizer, 
    REM obfuscator, and preverifier for Java bytecode. 
     
    rem Change current directory and drive to where the script is, to avoid 
    rem issues with directories containing whitespaces. 
    cd /d %~dp0 
     
    IF EXIST "%PROGUARD_HOME%" GOTO home 
    SET PROGUARD_HOME=.. 
    :home 
     
    set java_exe= 
    call "%PROGUARD_HOME%"\..\lib\find_java.bat 
     
    call %java_exe% -jar "%PROGUARD_HOME%"\lib\proguard.jar %* 




call %java_exe% -jar "%PROGUARD_HOME%"\lib\proguard.jar %*
改为:
call %java_exe% -jar "%PROGUARD_HOME%"\lib\proguard.jar %1 %2 %3 %4 %5 %6 %7 %8 %9
即可!

我对比了之前的版本,发现这改法,就是改成和之前SDK版本中含有的proguard.bat文件一致。
分享到:
评论

相关推荐

    丢失Android系统库或者Conversion to Dalvik format failed with error 1错误的解决方法

    本文分析了丢失Android系统库或者Conversion to Dalvik format failed with error 1错误的解决方法。分享给大家供大家参考,具体如下: 在eclipse开发Android项目时出现的很多问题都可以使用Project———&gt;clean来...

    Andriod开发中引入jar包的正确方式介绍

    andriod中如果引入jar包的方式不对就会出现... 结果控制台立刻报错:conversion to dalvik format failed with error 1。 而且项目上还会出现红叉,虽然项目里并没有错误。 clean一下,项目正常,但是bin里的apk文件

    Android开发中Eclipse报错及对应处理方法总结

    Conversion to Dalvik format failed with error 1 报错原因:原因是我在android工程中不小心多导入Java的mina,结果一跑程序就报这个错误。 解决方法:将Java中用到的mina包移除,就OK了。 小结:以后遇到这种报错...

    android正确导入jar包

    结果控制台立刻报错:conversion to dalvik format failed with error 1。而且项目上还会出现红叉,虽然项目里并没有错误。clean一下,项目正常,但是bin里的apk文件和dex文件都没了,运行项目出现错误:Can not ...

    Proguard5.1

    Android项目导出时报错:conversion to dalvik format failed with error 1,用下载的Proguard将lib和bin覆盖eclipse下的sdk\tools\proguard的lib和bin文件夹,然后重新导出就成功了

    Android控件大全以及各布局空间的使用方式

    有时,开发者可能会遇到一些问题,如“no classfiles specified”或“Conversion to Dalvik format failed with error 1”。这些问题可以通过清理项目或关闭自动构建功能来解决。 了解Android项目的目录结构是必要...

    Android各知识点详细总结.pdf

    13. **解决常见错误**: 遇到错误时,例如"No classfiles specified"或"Conversion to Dalvik format failed with error 1",可能需要清理项目(`Project -&gt; Clean`),或取消自动构建(`Project -&gt; 去掉 Build ...

    Android学习笔记

    遇到错误时,例如"No classfiles specified"或"Conversion to Dalvik format failed with error 1",可能需要清理项目("Project" -&gt; "Clean")或禁用自动构建("Project" -&gt; 取消勾选"Build Automatically")。...

Global site tag (gtag.js) - Google Analytics