即使项目已清理,也缺少R.java文件

时间:2011-10-04 14:19:24

标签: android eclipse r.java-file

每次在代码中我都有一个R,我得到一个错误R无法解析为变量。

R.java文件似乎丢失了。

我试过清理这个项目。

12 个答案:

答案 0 :(得分:25)

当您的某个xml文件中出现错误(例如,找不到资源)时,可能会发生这种情况。这也可能因为使用菜单而发生(由于菜单我遇到了这个问题,我不得不删除它们,清理并再次添加它们)。另一个可能的原因是你最初想让你的R类不在创建它的默认位置,而是在你自己的包中。因此,R可能在其默认位置创建,而您的程序正在其他地方查找。

答案 1 :(得分:11)

检查您的XML资源(尤其是最近编辑过的)是否存在错误和语法错误。当其中一个文件中有错误时,R类自动生成将中止。

答案 2 :(得分:7)

啊,“R无法解决”错误。我认为每个Android程序员都会遇到这种情况。我希望这些工具能够更好地生成R.java和amp;类。

试试这个,它在过去对我有用:

  

右键单击Project根目录 - > Android工具 - >修复项目属性

答案 3 :(得分:3)

由于资源名称不正确(某个音频文件名称中包含“ - ”),我发生了这种情况,我通过重命名文件来修复它。

答案 4 :(得分:2)

检查您是否意外导入android.R,这也会导致资源出错。

答案 5 :(得分:2)

当项目无法构建时会发生这种情况,因为项目名称可能不足以构建。

您需要创建另一个没有任何不可接受的符号的项目,并复制所有代码文件(.java,xml文件等)并将其粘贴到新创建的项目中。然后清除您的项目(项目 - >干净)并选择自动构建选项。

答案 6 :(得分:0)

这种情况发生在我的情况下,因为res / drawable-hdpi中存在的图像具有大写字符,我将其缩小然后才有效。

答案 7 :(得分:0)

你绝对应该检查你的XML文件,就像大多数人发布的那样。这是因为这个问题很可能是因为您的资源中的某些东西不正确,可能是由于调试。但是,如果不是这种情况,您可能需要检查包含任何有大写字母的资源的文件夹。您还要确保使用罗马字母表来正确命名资源。这让我有点头疼,因为我的很多文件夹和设置都是中文的。我将一些项目保存到Dropbox中名为麦思乐的安卓计划的文件夹中的工作区。我更改了文件夹的名称,问题解决了。

答案 8 :(得分:0)

有同样的问题,但清理项目即使使用正确的xml也没有解决任何问题。 这就是我做的

a)确保检查java构建器,如下图所示。如果是,请取消选中并再次检查

b)插入虚拟值,例如在布局中添加按钮

c)清理项目

Java builder configuration

答案 9 :(得分:0)

我找到了解决方案:

在从外部复制文件时,检查是否忘记在<string> </string>中定义任何string.xml

答案 10 :(得分:0)

这是一个非常常见的问题,当我们编辑项目中的任何xml文件时会遇到这种情况,例如drawable,layout,strings等。

当我们遇到这个问题时,我们通常清理项目(或)重新启动我们的IDE(或)导入R.java。 永远不要导入

首先尝试修复所有xml文件中的错误,然后从java文件中删除R.java import 。然后清理项目。

这么简单。

答案 11 :(得分:0)

如果在创建Android项目时没有看到R.java文件生成,那么您可能错过了在Android SDK Manager中下载Android SDK工具。 在eclipse中,转到Window - &gt;选择Android SDK Manager Android SDKManager窗口打开后,检查Tools文件夹并安装。安装完成后,重新启动eclipse IDE。 构建项目,您可以看到在Android项目的gen文件夹下生成的R.java文件。