问题是由于Android Dependencies小差号引起的,下午一搞Android的哥们在群里说最近导入的几个工程每个都是Android Dependencies报错,小差号,我先说解决方法:

方法一:自己新建工程,将整个工程重新建一遍。(事倍功半)

方法二:将Android Dependencies项直接remove掉,未作测试,有的说可以,有的说下次启动仍然报错。

方法三:引用你本地的 appcompat_v7_x  Library工程,_x是默认生成的代号随便一个都行,如图:

注意将原工程中引用的appcompat_v7_x  Remove掉

下面是对此问题的缘由介绍:

记得是ADT至22.6.0版本之后,创建新的Android项目,会出现appcompat_v7的工程。而且是创建一个工程新的工程就会出现,特别腻歪。查资料说appcompat_v7是Google自己的一个兼容包,就是一个支持库,能让android2.1以上全使用android4.0版本的界面。(本来挺好的事,但每次生成个新工程这对开发者来说也太腻歪了,本来就捉襟见肘的工作目录)

相信看到这里也就不难理解为什么会出现上面的问题,大家在上传或者相互拷贝工程的时候直接把工程拷了过去,都不习惯再把appcompat_v7也拷贝过去,新导入工程时就会报错。相信这个对于新手或不太注意的程序猿来说很是腻歪的一件事。

说到这里再多说点相关的东西。

Android Dependencies 是什么?

官方的解释是:Android Dependencies is a virtual folder where Eclipse shows what JAR files the project depends on. It's not a physical folder; you won't find it on your hard disk. And the folder is not checked in into Subversion.Do not delete that folder. You will destroy your project.To fix it, just revert to an older Subversion revision and check it in again.

      就这么简单几句话,不清不楚的,简单说:从ADT16开始,Android项目中多了一个名为“Android Dependencies” 的库应用文件夹,这是ADT的第三方库新的引用方式。当你需要引用第三方库时,只需在项目中新建一个名为"libs"的文件夹,然后将所有第三方包拷贝到该目录下。当eclipse启动时,ADT就会自动帮你完成库的引用,而不需要像以前一样自己Build Path,也不再需要Referenced Libraries了。

这里又提到了libs Referenced Libraries ,我们还可以想到Android Private Libraries,想下下引用library的方法就不难理解

1.被引用的项目在“Android”选项里设置“Is Library”打钩

2.引用项在“Android”选项里设置“add"被引用项

3.android Dependencies会显示引用项目,依赖项目

Android Private Libraries:表示放在libs里面的jar包引用,视为私有引用

Referenced Libraries:表示引用的外部jar包。

另:

如果引用项目和被引用项目用到同一个jar包,版本需要保持一致。

Android Private Libraries和Referenced Libraries不能重复引用同一个jar包,两个都有时去掉一个。

最近发现  Android Private Libraries和Referenced Libraries可以重复引用同一个jar包,不知该当何解,以后有时间再研究,继续coding.....

Android Dependencies小差号引起的问题的更多相关文章

  1. 不自动生成Android Dependencies的解决方式

    今天遇到的奇怪问题是网上下载的demo导入第三方包运行后Android: NoClassDefFoundError的错误,原因是第三方的jar包并没有打包进apk里,运行是肯定要出错的. 网上百度了N ...

  2. android常见错误-The container 'Android Dependencies' references non existing library

    The container 'Android Dependencies' references non existing library

  3. 【转】如何手动添加Android Dependencies包

    在ADT16 之前可以在工程里面做关联,eclipse会在工程上自动添加ReferenceLibrary.新版本的ADT修改了第三方jar的导入方式,只需要在工程目录下新建libs文件夹,注意是lib ...

  4. Android - 加入Android的OpenCV依赖库(Android Dependencies) 问题

    加入Android的OpenCV依赖库(Android Dependencies) 问题 本文地址: http://blog.csdn.net/caroline_wendy 假设想要加入OpenCV的 ...

  5. android 获取IMEI号

    android 获取 imei号码 核心代码: Imei = ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)).getDeviceId( ...

  6. Android 基于身份证号的自定义键盘

    上图上代码 public class MainActivity extends AppCompatActivity { EditText writebankcard_mobileedit; Custo ...

  7. Android 根据QQ号跳转到QQ聊天界面

    从自己开发的应用中根据QQ号跳转到QQ应用的聊天界面,实现起来很方便: 即: startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(" ...

  8. Android 国际区号注册手机号编码 以及常用城市列表

    附上 国际区号编码:我是定义到arrays.xml里面了 <?xml version="1.0" encoding="utf-8"?> <re ...

  9. 如何手动添加Android Dependencies包

    在ADT16 之前可以在工程里面做关联,eclipse会在工程上自动添加ReferenceLibrary.新版本的ADT修改了第三方jar的导入方式,只需要在工程目录下新建libs文件夹,注意是lib ...

随机推荐

  1. Nicholas C. Zakas(JS圣经:JavaScript高级程序设计作者)如何面试前端工程师

    Original Post:Interviewing the front-end engineerNicholas C. Zakas,2010年1月5日翻译完成:2010年1月7日,最后更新:2010 ...

  2. hdu 4940 无源汇有上下界最大流

    /* <img src="http://img.blog.csdn.net/20140823174212937?watermark/2/text/aHR0cDovL2Jsb2cuY3N ...

  3. java基础之导入(药师点评)

    /** * 药师点评的导入 * @param request * @param response * @param f * @param tmallTcMessageImport * @return ...

  4. StringEscapeUtils的使用

    使用commons-lang.jar import org.apache.commons.lang.StringEscapeUtils; public class T { public static ...

  5. 随机获取oracle数据库中的任意一行数据(rownum)

    最近看oracle资料的时候,了解rownum的概念,以前只知道对数据库表进行简单的增删改查: 看到了rownum的概念后,突然想到了好多业务场景应该都可以适用的,比如在进行随机发奖的时候, 我们就可 ...

  6. C语言转义字符相关知识

    在C语言里所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示.而C中定义了一些字母或数字前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称 ...

  7. [转]Windows Shell 编程 第九章 【来源:http://blog.csdn.net/wangqiulin123456/article/details/7987969】

    第九章 图标与Windows任务条 如果问一个非程序人员Windows最好的特色是什么,得到的答案应该是系统最有吸引力的图标.无论是Windows98现在支持的通用串行总线(USB)还是WDM(看上去 ...

  8. checkbox的问题整理

    之前做过一些checkbox的小功能,由于水平有限总是在这一部分花费一些时间,趁现在时间充裕些,整理出来. checkbox是否被选中的判断 第一种: $(this).is(":checke ...

  9. 内核参数优化之2-1 tcp/ip 标志位报文解析

    以下内容纯属虚构,切勿轻易相信! 众所周知,tcp/ip三次握手和四次挥手,均由syn/ack/fin三个标志位报文决定,但是这三个标志位报文,并不是说在构建连接的时候只发送一次的,因为协议不知道网络 ...

  10. uC/OS-II内核架构解析(1)---嵌入式RTOS(转)

    uC/OS-II内核架构解析(1)---嵌入式RTOS 1. 嵌入式系统基本模型 2. RTOS设计原则 采用各种算法和策略,始终保持系统行为的可预测性.即在任何情况下,在系统运行的任何时刻,OS的资 ...