代码之家  ›  专栏  ›  技术社区  ›  Jonas

我的项目中没有生成的r.java文件[重复]

  •  42
  • Jonas  · 技术社区  · 14 年前

    这个问题已经有了答案:

    我正在做 Notepad tutorial, exercise 2 . 我首先创建了一个新的Android项目,然后选择 从源创建 为练习导入下载的源文件。

    但是现在我在Eclipse中得到了很多错误,问题是没有生成 R.java 类。我怎么解决这个问题?文件夹 gen/ 是空的。


    我在上有错误 Notepadv2.java 而在 res/layout/note_edit.xml 两者似乎都与 爪哇 丢失。

    这是我的 import 陈述 记事本2.java :

    import android.R;
    import android.app.ListActivity;
    import android.content.Intent;
    import android.database.Cursor;
    import android.os.Bundle;
    import android.view.ContextMenu;
    import android.view.ContextMenu.ContextMenuInfo;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.view.View;
    import android.widget.ListView;
    import android.widget.SimpleCursorAdapter; 
    

    它们是由eclipse命令创建的 Ctrl+Shift+O .

    21 回复  |  直到 11 年前
        1
  •  74
  •   Octavian Helm    13 年前

    Project 然后击中 Clean . 这应该重新生成r.java文件。

    也要摆脱任何 import android.R.* 然后做我提到的清理。

    显然,jonas问题与错误的目标构建设置有关。他的目标是 Android 2.1(SDK V7) 他的布局XML使用的位置 Android 2.2(SDK V8) 元素(布局参数 match_parent ,因此Eclipse无法正确生成导致所有问题的r.java文件。

        2
  •  39
  •   Miguel Febres    12 年前

    在一整天试图找出R文件没有生成的原因之后,我发现在安装了android sdk tools r22之后,工具中有一个新的选项:android sdk build tools。

    安装后,重新生成了R文件。

        3
  •  7
  •   WarrenFaith    14 年前

    现在你已经进口了 android.R 而不是你自己的…如果某个XML文件出错,请尝试查看“问题”视图…摆脱 import android.R 并对R的所有用法进行评论。 *

    当项目没有其他错误时,清理会有所帮助,因此请检查res文件夹中的XML文件或文件命名。

        4
  •  4
  •   DeRagan    14 年前

    可能您使用的SDK版本不正确。右键单击项目。选择 属性-->Android . 注意2.2是最新的SDK。检查它,看看它是否被编译了…

    编辑

    之后还要清洗

        5
  •  4
  •   Devrath    11 年前

    I Had a similar problem

    识别此问题的最佳方法是识别线头警告: * 右键单击 project gt; Android Tools gt; Run Lint : Common Errors *

    • 这有助于我们显示一些错误,通过这些错误我们可以解决问题 使r.java重新生成
    • 通过以上步骤,我确定我添加了一些图像 我没有使用的文件--我删除了它们--修复了 问题!

    最后清理项目!

        6
  •  3
  •   Bozho    14 年前

    我的同事遇到了这个问题——重新启动Eclipse解决了这个问题。

        7
  •  3
  •   Hugo Pinto    12 年前

    为版本22.0.1更新android sdk manager中的android sdk工具。 这对我很有用。

        8
  •  2
  •   Varun Singh    14 年前
    1. 从代码中删除“import r.java”行。它由Eclipse完成,以解决问题。
    2. 转到“note-edit.xml”文件。无论您在何处发现“匹配父级”作为属性值,请将其替换为“填充父级”或“包装内容”。
    3. 做一个干净的建筑。将自动生成r.java。

    如果出现此问题,则表示内容中不支持“匹配父级”属性。相反,使用“填充父对象”。

    “填充父视图:该视图应与其父视图一样大(减去填充)。从API级别8开始不推荐使用此常量,并将其替换为match_parent。“

        9
  •  1
  •   ykatchou    14 年前

    你安装了Android插件吗?

    您的项目必须是Android类型。

        10
  •  1
  •   Charleston    14 年前

    这实际上是教程代码中的一个bug。我也遇到了同样的问题,最后我意识到问题出现在“note-edit.xml”文件中。

    一些布局高度/宽度属性被设置为“匹配父级”,这不是一个有效值,它们应该被设置为“填充父级”。

    这引发了一个bug,导致r.java文件的生成失败。因此,如果您遇到此问题或类似的问题,请检查所有XML文件,并确保其中没有任何错误。

        11
  •  1
  •   Dave Appleton    12 年前

    我刚刚遇到了一个问题,以前工作过的项目停止处理所有引用r的内容,因为r.java没有生成。

    ** *也检查控制台视图 * *

    我(使用finder)备份了主图标(甚至没有使用) 所以其中一个res文件夹(hdpi)有

    图标.png icon.png的副本

    控制台指示“icon.png的副本”不是有效的文件名。 其他地方没有标记任何错误-res文件夹中没有红色x….

    但是用“_uuu”替换空格,一切都恢复正常……

        12
  •  0
  •   srinathhs    14 年前

    我已经多次面对这个问题。根本问题是

    1. 在项目设置中未选择目标SDK版本

    1. 缺少文件default.properties(manifest.xml旁边)或未设置最小SDK级别。

    检查这两个并按照前面选项中的建议进行干净的构建,它应该可以正常工作。

    检查“问题”或“控制台”选项卡中的错误。

    最后:您有/eclipse对项目文件夹的写权限吗?(也不太可能是磁盘空间)

        13
  •  0
  •   Jimmy    14 年前

    我也经历过这样的问题 R.java 如果没有错误,Eclipse也会抱怨我的代码中有错误(针对类文件显示红色的x图标)。

    我找到的解决这个问题的唯一方法是通过选择 Project > Clean

    这似乎为我自己解决了这个问题,运行Eclipse3.5.2

        14
  •  0
  •   Dev.Sinto    14 年前

    是的,我也有同样的问题,我是通过 从工具栏中选择项目清理项目 同时重置生成自动选项 有时需要更改XML文件匹配格式的名称[A-Z][0-9] 必须更改大写字母

        15
  •  0
  •   zkwentz    14 年前

    当您切换到最新的sdk(2.2)构建时,似乎不再生成r.java文件。或者至少不像我们习惯的那样。要解决此问题,请删除gen文件夹下的包,然后在不生成的情况下进行清理。这就解决了我的问题。

        16
  •  0
  •   Cjxcz Odjcayrwl    13 年前

    我有这个问题是因为Android插件中的一些内部错误。当我试图打开一些布局XML时,出现了错误:

    The project target (Android 2.2) was not properly loaded.
    

    在我的例子中,重启Eclipse和清理项目有帮助。

        17
  •  0
  •   Steffen Brem    12 年前

    例如,这也可能是错误的XML布局文件的问题。如果XML文件无效(包含错误),则清除后不会重新生成R文件。如果修复此问题,将再次自动生成R文件。

        18
  •  0
  •   ENSATE    12 年前

    根据我的经验,我可以总结出:

    1.问题主要是指可以 发生在XML文件上。

    2.您可能会意外地将androidmanifest.xml复制到子文件夹。

    1.一个文件是未定义的扩展名。

    检查完所有这些之后,转到项目->清理或只删除/bin和/gen文件夹。

        19
  •  0
  •   Vivek Warde    11 年前

    只是 重新启动 Eclipse将解决这个问题,因为工作区将是新构建的!去

    文件->重新启动

    这是最简单的避免挫折的方法,通过建造,财产,废话…

        20
  •  0
  •   sjngm quinti    11 年前

    还有一个:我刚要哭了,却设法得到了我的爱人。 R.java 背部:

    我已经有一段时间没有更新我的安卓系统了。我需要一个特性并运行sdk管理器。除了我需要的,我基本上检查了它想要更新的所有内容。之后我的 爪哇 消失在日蚀中。

    简而言之,在sdk管理器中有一个新条目“android sdk build tools”,我想上次更新时它不在那里。这是一个显而易见的名字,真的。在我安装了Eclipse之后 爪哇 回来。

        21
  •  -1
  •   andrew chaple    14 年前

    爪哇…比调试.. 或 从代码中删除“import r.java”行。它由Eclipse完成,以解决问题。 转到“note-edit.xml”文件。无论您在何处发现“匹配父级”作为属性值,请将其替换为“填充父级”或“包装内容”。 做一个干净的建筑。r.java将自动生成