之前偶尔会在开启eclipse后遇到错误:Conversion to Dalvik format failed with error 1,对这个问题的处理也是潦草解决:在从网上查找了一个方法无效后,立即新建一个项目,然后将出问题的项目中的数据右键copy到一个新项目中,“Config Build Path...—>Add External JARS...”问题解决,但我认为有些繁琐。
今天又遇到了这个问题,奔着提高效率的目标从网上找了一些方法,逐条试时,终于将问题用不繁琐的方法解决。
单条的解决方案转自博客:Ramond007,以下是解决此问题的方法汇总:
1、查看是否加载了Android.jar,若没有则通过以下方法添加:
(1)项目上右键单击—>Build Path—>Config Build Path...—>Java Build Path—>Add External JARS—>Android.jar。
(2)项目上右键单击—>Properties—>Java Build Path—>Add External JARS—>Android.jar。
(3)菜单栏Project—>Properties—>Java Build Path—>Add External JARS—>Android.jar。
按上述3中方法之一加载Android.jar之后,查看项目是否已消除错误,若没有则使用方案2。
2、在对话框“Properties for %项目名称%”(“项目上右键单击—>Properties”或“菜单栏Project—>Properties”两种方式皆可打开)中,在左侧选择Android标签,在右侧Project Build Target中选择项目中添加的jar包对应的版本,然后在Library中勾选Is Library,再查看项目是否已消除错误,若没有则使用方案3。
3、新建一个项目,将原项目中的数据copy到新的项目中,然后配置SDK。
注:由于我遇到的问题通过方案2已解决,暂时不能实验新的错误,所以对方案4、5的试验顺序没有确定,所以试一试吧。
4、 修改项目classpath文件,将内容<classpathentry kind="lib" path ="自定义jar的地址" /> 修改成 <classpath entry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>。
注:classpath文件在eclipse工作空间中对应项目的根目录下(通过文件浏览器打开)。
5、android低版本工程(如1.5)放到高版本环境中(如2.2)可能会上述错误,解决方法如下:
(1)如果不修改android sdk版本,则使用project clean 命令作用于某工程即可。 (该处理方式只是在高版本中兼容了低版本工程,未真正意义上的升级。)
(2)如果修改android sdk版本,则需要以下几个步骤:
第一, 修改SDK 。
选择工程,build path --> configure build path ---> library 删除引用的低版本SDK,然后add External JARs,选择高版本SDK 。
第二, 修改classpath文件 。
该文件可能存在该项: <classpathentry kind="lib" path ="你所指定的高版本的地址",将其修改成<classpathentry kind="con"path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK" /> 。
第三, 修改AndroidManifest.xml 。 在AndroidManifest.xml文件中,application标签后添加<uses-sdk android:minSdkVersion="3"></uses-sdk> 。
第四, 修改default.properties(很重要) 。
该文件最后一行(前面没用#的)target=android-3 该成target=android-8。
再看看你的工程和新建的android 2.2的工程结构就一样了。
以上是此问题的5种解决方案,若不能解决你的问题,且你又找到了新的解决该问题的有效方案,请给我留言,我将会增加新的解决方案。
注:若紧接着遇到了错误:“Could not find *.apk!”,去掉解决方案2中所选中的Is Library 框即可。