在开发过程中,eclipse是使用得最多的IDE,但由于其开源且免费的性质决定了其不然有很多的BUG,在项目很赶的时期碰到某些很恶的错误很浪费时间,也很让人郁闷,现我总结一下我碰到的错误并总结下对应解决的方法:

1,从大的方面讲,如果碰到一个工程有错,首先看其JDK是否为最新的,比如有时候在进行工程移植时,吧一个工程导入到另一个eclipse工作环境,默认会是JDK1.4,此时就需要调整JDK版本到最新的比如JDK1.6;
 
2,再者就是有时候当移植工程时,会丢失掉android系统库,此时可以先尝试右键工程propertiey--->android--->选择对应的系统库,比如android2.2,这里需要注意的是,当当前工程有关联工程时,如果关联工程是被引用包,那么在propertiey--->android下方有个Add选项,意思就是关联工程,被关联工程就是is
library.
 
3,如果问题还未得到解决,再继续右键properties--->build_path检查包,如果出现有红X的包,remove掉,然后再导入正确的包;
 
4,有时候会出现gen文件丢失的情况,此时则可以尝试通过clean解决.
  5,
最后就是当移植工程时,当移植前的工程所处SDK比较低,移植后的所处SDK比较高会出现:Conversion to Dalvik format failed
with error
1的错误,这个错误很恶心,网上的说法是通过clean解决,但很多时候解决不了,此时可以打开工程所在目录,找到项目的classpath文件
 
直接从其他正常项目里面把

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

<classpathentry
kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
这样子刷新项目,Android系统库回来了,那个错误也解决了。

以上是暂时的总结,还有些错误暂时记不起来了,或者还有些错误暂时没碰到,以后碰到了继续记录上。

补充说明: Android R.java文件丢失的处理

R.java这个文件是会自动生成的,但是如果你不小心xml文件写错了,或者不小心在编辑xml的时候点击了run(其实这个时候会运行这个xml文件,会生成一个同名的xml文件,后缀为xx.out.xml),然后正巧你游clear了一下项目,你可能会发现gen下面的R.java的文件没有了,这个在刚开始的时候很气人,真不知道怎么解决,后来发现,只要xml文件有问题,系统是绝对不会给你自动生成这个R.java文件,因为他要参照你的每张xml里的数据来生成R.java,所以自然就生成不了了。虽然知道了原因但是问题头疼,假如项目的layout
xml文件有几十个,这个时候怎么办,难道要一个一个xml的看吗,呵呵,其实也不是,把console中的信息clear一下,然后再clear项目一下,这个时候,console中会有很多红色的信息,参照这个肯定能准确的找到哪个文件报错了。

还有就是,修改Warnings处的地方,把Warnings消掉,一般都是sdk版本之类的问题,因为R.java
是SDK根据资源文件生成的,如果SDK活着资源文件有问题,都会报错。

还有需要补充的是,当你的android.jar有了,R文件也有了,JDK也对应到位了,但是还报错,找到代码发现,@Override下有红线,此时的做法可以先把jdk改为1.5,再改为1.6,就OK了,但发现,某些时候,这招也不管用那么可以通过右键工程选择Android
tools---->Fix project properties解决。

再继续补充说明,有时候当把工程部署到模拟器时,会碰到“Failed to install xxx.apk on device
'emulator-5554'”  这时候可以

默认值是5000,设置成比如50000,就搞定了!

  部分网友下载的Android工程,导入到Eclipse时提示The project was not built since its build
path is incomplete. Cannot find the class file for java.lang.Object. Fix the
build path then try building this
project的提示,这样的错误一般是Java的JRE没有正确加载,当然了对于Android来说相关的SDK库也没有正确加载,解决的方法很简单,通过Google推荐的Android项目导入方法即可解决,如下:
  在Eclipse菜单的File=>New=>Project选择Android=>Android
Project 这一步时,选择Create project from existing
source选项,这样设置Location为你要导入Android项目的路径即可

继续补充说明:

当上述的一切都没问题了,比如我的PYH引用framework,framework没任何问题,PYH该做的也都做了,但PYH还是报错,结果发现,原来是framewok引用的android包是2.3.3的,而PYH引用的是2.2,调成一致就行了!

工程上右链-->Properties-->Android-->选择SDK版本
这个主要是导入项目的属性文件中的sdk版本与当前开发环境的sdk版本不同,在这里只需要稍微修改一
下项目的属性文件就可以,在android项目的default.properties
中的修改target的值,如果是2.1版本就将target的值改为android 7, 如果开发环境是2.3版本,就将target改为android
9,总之这个值与使用的android sdk版本的关,这个修改完后,右键点击项目选择 Android Tools->Fix Project
Properties,这时你会看到项目所引用的android.jar已经自动导入到项目中。或者修改完target的值后,只要保存一下就可以成功。

关于eclipse导工程或移植工程常碰到的错误汇总的更多相关文章

  1. java中自己常犯的错误汇总

    package debug; /** 1.定义一个公共的动物类,包含名字.年龄.颜色和吃饭东西方法 2.定义一个猫类,继承动物类,同时拥有玩游戏的本领 3.定义一个狗类,继承动物类,同时拥有看门的本领 ...

  2. 用eclipse打开已经编译的工程

    第一种方法: eciplise------>File------>Import------>General------>Existing Project into Worksp ...

  3. eclipse java工程和maven工程的互相转换

    eclipse java工程和maven工程的互相转换 maven转为工程一般工程: 工程右键--->Maven--->Disable Maven Nature转为一般工程. 一般工程转为 ...

  4. 基于eclipse创建android的helloworld工程

    基于eclipse创建android的helloworld工程 之前用过Android studio感觉很慢,决定采用eclipse来学习Android开发.下面来看是怎么创建的. 选择File--- ...

  5. eclipse和android studio导入工程的错误

    eclipse中导入工程,需要注意导入的工程是什么,android 工程和java工程是有区别的.如果导入错误了,调起来也比较麻烦.因为入口错了呀. 特别在android studio工程,从其它人的 ...

  6. eclipse开发工具Import工程后,工程文件夹上出现黄色感叹号——解决方法

    eclipse开发工具Import工程后,工程文件夹上出现黄色感叹号. 可能是Work目录无效,解决方法:删除Work目录即可,如下图所示: 删除后,如下图:

  7. JAVA编程相关:eclipse如何导入已有工程

    eclipse使用过程中,经常会遇到导入外部eclispe工程的情况,导入外部eclipse也就是将已有的eclipse工程导入到eclipse中,那么如何导入外部工程呢?下面为大家分享导入已有ecl ...

  8. SpringBoot(一):使用eclipse/idea创建springboot helloword工程

    eclipse如何创建spring boot工程: 第一步:首先打开eclipse,找到图中的下图的中“下三角”符号,选中"working sets"(表示将会把eclipse中的 ...

  9. Eclipse拷贝动态的web工程修改context root的值

    Eclipse拷贝动态的web工程修改context root的值 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. context root的名称一般是我们访问URL时的PATH路径 ...

随机推荐

  1. 10-free-must-read-books-machine-learning-data-science

    Spring. Rejuvenation. Rebirth. Everything’s blooming. And, of course, people want free ebooks. With ...

  2. angular学习笔记(三十)-指令(4)-transclude

    本篇主要介绍指令的transclude属性: transclude的值有三个: 1.transclude:false(默认值) 不启用transclude功能. 2.transclude:true 启 ...

  3. Unique constraint on single String column with GreenDao

    转:http://stackoverflow.com/questions/22070281/greendao-support-for-unique-constraint-on-multiple-col ...

  4. RAID卡的缓存与磁盘自带的缓存的关系

    RAID卡是否有(启用)缓存对“随机读写”性能有巨大的影响.中高端的RAID卡都有缓存(价格也高). 那么RAID卡的缓存与磁盘自带的缓存是如何设置的? 戴尔服务器的perc H710 RAID卡有5 ...

  5. 【深度学习】理解dropout

    dropout是指在深度学习网络的训练过程中,对于神经网络单元,按照一定的概率将其暂时从网络中丢弃.注意是暂时,对于随机梯度下降来说,由于是随机丢弃,故而每一个mini-batch都在训练不同的网络. ...

  6. Win7窗口最大化和最小化快捷键

    原文: https://blog.csdn.net/u012269267/article/details/52484399 Windows 键 + 方向键“↑” 使当前使用的窗口最大化. Window ...

  7. iOS开发如何在一个透明视图上添加不透明的子控件

    相信很多同学都会遇到过这个问题, 当我们弹出一个半透明的遮盖层时, 又想在遮盖层上加一些子视图, 这个时候如果你的遮盖层设置了alpha属性,  你会惊讶的发现, 加载遮盖层上的所有子控件都是透明了, ...

  8. 基于jQuery图片弹出翻转特效代码

    分享一款基于jQuery图片弹出翻转特效代码.这是一款基于jQuery+HTML5实现的,里面包含六款不同效果的鼠标点击图片弹出特效下载.效果图如下: 在线预览   源码下载 实现的代码. html代 ...

  9. golang前后端jwt对接

    0x0 什么是jwt JWT是JSON Web Token的缩写,可以用作授权认证.传统的授权认证一般采用session,由于session存储在服务端,加大了服务端的计算量, 而且多台服务器之间存在 ...

  10. [转]javaweb学习总结(二十九)——EL表达式

    原文地址:https://www.cnblogs.com/xdp-gacl/p/3938361.html 一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获 ...