R无法解析为变量 - Eclipse技巧找到错误?

时间:2013-02-27 14:51:53

标签: android eclipse

我有一个很多人都有的问题,看看这个主题中描述的众多问题:有时候,R.java消失了,经过一段时间(太长时间)改变了我做的事情后,R.java回来。当没有生成R.java时,调用R的行显示错误:'R无法解析为变量'。

我知道R不是真正的问题,我的代码中某处有一个或多个错误。

我的问题是:如果Eclipse没有显示它们,如何本地化这些错误?

如果您遇到与我相同的问题,请先查看"R cannot be resolved to a variable"?,这可以帮助您摆脱无情的错误

8 个答案:

答案 0 :(得分:4)

如果您正在尝试查明此错误的来源,请尝试以下操作:

  1. 转到Project -> Clean。这将确保您的错误不是因为构建错误。如果仍然找不到R,请转到步骤2.
  2. 您应该在Eclipse中有一个Problems选项卡,它将列出打开项目中的所有错误和警告,如下面的屏幕截图所示。如果您看不到“问题”标签,请转到Window -> Show View -> Problems
  3. 展开Errors部分以查看存在的问题。在大多数情况下,您将被告知问题,项目,文件和行号。
  4. enter image description here

答案 1 :(得分:2)

  

如果Eclipse没有显示它们,如何本地化这些错误?

通常,Eclipse 显示它们。错误将出现在资源或清单中,通常由程序包管理器中文件图标上的红色X徽标表示。通常,控制台也会包含有关错误的日志消息。

推动推进,你可以进行命令行构建并查看报告的内容。

答案 2 :(得分:1)

如果您的R.java文件夹或其他XML文件出现问题,Eclipse将不会构建/res文件。

我建议你检查那个文件夹。

答案 3 :(得分:0)

如果clean不起作用,除了缺少R.java之外没有错误重启eclipse。

File Menu->restart

答案 4 :(得分:0)

发现问题,但无法弄清楚如何简单地找到它。我最后删除了这一行< string name="action_settings">Settings< /string>,同时复制了另一行。

不知道它的用途,但是Eclipse没有在错误日志中显示,也没有在我查找过的地方显示。

无论如何,谢谢你们的帮助,希望我不会再遇到类似的问题了!

答案 5 :(得分:0)

1)查看Package Explorer树中的xml文件是否有错误图标(如果有),修复错误并生成R-class。

示例提示:FILL_PARENT在API级别8中重命名为MATCH_PARENT;因此,如果您的目标是平台2.1(api 7),请将所有出现的内容更改回“fill_parent”

2)如果你添加了“import android.R;”试图快速修复,删除该行

3)检查AndroidManifest.xml文件,查看包名是否正确。如果您复制了一个示例,那么这可能是错误的,也是问题的根源

4)我遇到了同样的问题。我没有任何说明“import something.R”的行。清洁和重建也没有解决问题。

原来是因为布局xml文件的名称。这些文件只能包含小写字母,数字或下划线。当我将文件名(以及引用它的所有内容)从myLayout.xml更改为my_layout.xml时,一切正常。

5)我刚遇到这个问题。这是因为我有一个冗余的菜单资源,它引用了一个不存在的字符串。删除菜单XML并返回R。

答案 6 :(得分:0)

正如在这个链接中所说的那样 "R cannot be resolved to a variable"? 而这另一个 R cannot be resolved - Android error 有几种解决方案。

在我的情况下,我配置了代理服务器 在SDK Manager中:工具&gt;选项

答案 7 :(得分:0)

在我更新了sdk工具和软件包后,我收到了这个错误。我认为更新没有正常工作,经过大量的努力,我只是尝试使用sdk管理器工具再次更新sdk软件包,之后一切正常。