[转]丢失Android系统库或者Conversion to Dalvik format failed with error 1错误的解决
在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问题了。折腾了一番后,很多网友都说用Project clean可以解决,但对我的情况来说,没有用处。在百度找到解决方法了:修改项目classpath文件,这让我明白了,直接从其他正常项目里面把
<classpathentry kind="lib" path ="自定义jar的地址" />
修改成
修改成
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>。这样子刷新项目,Android系统库Android 2.1回来了,那个错误也解决了。
这几天又遇到这样的问题了,但是.classpath文件里面已经包含了上面的con Path,后来在论坛(http://www.eoeandroid.com/thread-53880-1-1.html)上找到新方法:
project -> properties -> android label, check a target from the project build target list
附上网上广为流传的解决方法: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的工程结构就一样了。
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的工程结构就一样了。