作为新手,学习android 的时候难免要导入一些示例,目的为了更加了解android各种API用法,顺便也可以学习下别人代码的写法。

可是导入android源码后,基本都有错误,R.java也不会自动生成,

因为是第一次导入工程,工程有错R.java就不会自动生成了,工程有错误,当然模拟器就不能启动,也就看不到效果。

在网上找到的各种解决方法,总结如下:
  
1、选择菜单  Project >> Clean ,前提是勾选上 Bulid Automatically(自动构建部署) , 点Clean后会重新构建项目。
  因为一般情况下,R.java文件在这个时候会重新更新生成一边,如果工程有错,就不会自动生成。

2、选择工程,右键 Android Tools >> Fix Project Properties 这个操作有时候可以修正一些错误。

3、还有的说法是重新建一个空的工程,然后把这里面的代码,资源文件按照对应的包路径什么的拷进去,然后重新生成。
  这种方法,等价于第1种方法,都是重新构建部暑。

 以上几种方法都试了,R.java依旧没出现,整个工程还是一大堆错误。任意点开一个有错误的布局XML文件,如果看到类似的错误代码:            android:layout_height="match_parent" , 就有可能是工程的SDK版本和eclipse默认的SDK版本不匹配的问题。
  于是选择工程,右键 Properties >> Android 然后看到右边的一块 Target Name, 把选中 Android 1.5,换到2.2(最新的),重新构建。
  错误没了,久未解决的问题解决了,R.java也出来了,一个字高兴啊,启动模拟器一切正常。

  总结下当导入其它源码时候,首先要保证源码的SDK版本和你eclipse默认版本是否一致。 
  查看源码版本办法:打开default.properties 文件,看target=android-7 这后面这个数是多少。 
  版本对应关系:target=android-3 <---> android 1.5  ... ..., target=android-8 <---> android 2.2 其它的自己测试下。

-----------------我是分割线-----------------------------------------------------------------------

自动生成的工程里缺少R.java,

按照网上的方法“右击你的工程(项目)——>Android Tools——>Fix Project Properties ”不管用,

确保项目编译了一下clean,或是右击项目-->property-->android-->applay一下 也是不行

google和百度一通后,无果。

继后跟踪发现,R.java在工程里面自动生成,后到官方站点看了帮助文档,发现通过platform-tools路径下的aapt.exe执行,

再经过检测,aapt.exe程序好像已经损坏,不能执行,故而再sdk setup中执行,获取该文件,覆盖原来的,R.java自动产生了。

问题解决,为何aapt.exe损坏,还有待考证:

http://www.cnblogs.com/cngreatwall/archive/2011/03/11/1980525.html

-----------------我是分割线-----------------------------------------------------------------------

R.java 文件不能生成,但碰到的和上面提到的都不一样——

1、:AndroidManifest.xml

<activity android:name=".Index" android:label="@string/index"> </activity>

  提示 index没定义!

2、包名改了, AndroidManifest.xml里的还没改过来。

3、资源文件只能以小写字母和下划线做首字母,随后的名字中只能出现 a-z、0-9、_ 这些字符。

android 工程里缺少 R.java 文件原因和解决方法的更多相关文章

  1. 兔子--R.java丢失原因及解决的方法

    R.jar丢失原因: a:eclipse指向的adk路径有中文,或者是workspace路径有中文 b:xml文件里有错误或者引用的资源不存在 c:xml或者drawable下资源文件不能够有大写字母 ...

  2. Android Studio 项目代码全部消失--出现原因及解决方法

    出现原因,自己把项目地址父层目录文件名修改了,导致原来打开的项目位置不对,代码全部消失.这样就只要关闭项目,打开一下你修改路径下的项目即可.因为原来的项目还在原来的路径下寻找,但是原来的路径发生了改变

  3. Tomcat的webapps目录下的classes文件夹下缺失编译好的.class文件原因及其解决方法

    右键,选择BuildPath: 可以编辑Output folder,指定编译后的文件的存放目录,一般是target/classes目录

  4. Android Studio maven-metadata.xml 卡着不动原因和解决方法

    头一天好好的,第二天就卡着了. 一直在这个地方不动,如果停止就会报 Error:Could not run build action using Gradle distribution ‘https: ...

  5. Android下HelloWorld项目的R.java文件介绍

    R.java文件介绍 HelloWorld工程中的R.java文件 package com.android.hellworld; public final class R {     public s ...

  6. R.java文件介绍

    HelloWorld工程中的R.java文件 package com.android.hellworld; public final class R {     public static final ...

  7. eclipse android 不会自动生成R.java文件和包的解决办法

    eclipse下编写android程序突然不会自动生成R.java文件和包的解决办法   我的eclipse原来是好好的,什么问题都没有的,结果今天一打开新建一个android程序,发现工程里不会自动 ...

  8. 【android相关】【问题解决】R.java文件丢失

    在进行android开发过程中,有时候,我们会遇到gen文件中R.java丢失的现象.重新build,或者clean工程,close并重新打开Project,但有时也没解决. 这可能是由于不小心把xm ...

  9. [转]eclipse下编写android程序突然不会自动生成R.java文件和包的解决办法

    原网址 : http://www.cnblogs.com/zdz8207/archive/2012/11/30/eclipse-android-adt-update.html 网上解决方法主要有这几种 ...

随机推荐

  1. HDU 4228 Flooring Tiles 反素数

    推出了结论,万万没想到最后用搜索.. 还想dp来着.. #include <cstdio> #include <cstring> #include <iostream&g ...

  2. c语言下多线程

    原文:c语言下多线程 [问题]创建了10个线程,10个线程公用一个线程体,创建如下: int t1=0,t2=1,t3=2,t4=3,t5=4,t6=5,t7=6,t8=7,t9=8,t10=9; i ...

  3. LeetCode——Longest Palindromic Substring

    Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...

  4. (12) MVC5 EF6 Bootstrap3

    MVC5 + EF6 + Bootstrap3 (12) 新建数据 系列教程:MVC5 + EF6 + Bootstrap3 上一节:MVC5 + EF6 + Bootstrap3 (11) 排序.搜 ...

  5. 前端构建利器Grunt—Bower

    runt + Bower—前端构建利器 目前比较流行的WEB开发的趋势是前后端分离.前端采用重量级的Javascript框架,比如Angular,Ember等,后端采用restful API的Web ...

  6. Java之IO转换流

    直接上码:   读取键盘录入数据代码演示:   import java.io.IOException; import java.io.InputStream; /** *读取键盘录入的数据,并打印在控 ...

  7. Linux下的C程序如何调用系统命令,并获取系统的输出信息到C程序中

    直接贴代码: #include <stdio.h> #include <string.h> #include <errno.h> int main(int argc ...

  8. leetcode第33题--Search for a Range

    Given a sorted array of integers, find the starting and ending position of a given target value. You ...

  9. .NET MVC4 实训记录之七(实现资源的自主访问后续)

    我们在上一篇中讨论了如何利用ModelMetadata实现国际化资源文件访问,但也留下了一些问题,即:如何利用ModelMetadata实现相同类型的属性信息的个性化资源显示.本人没有找到合适的方案, ...

  10. ODBC操作数据库

    /*ODBC使用步骤:(ODBC数据源由微软平台提供) * 1.配置ODBC数据源(控制面板->管理工具->ODBC数据源) * 2.加载并注册驱动程序,导入java.sql.*包 * 3 ...