可能的重复:
在 Eclipse 中进行 Android 开发:R.java 未生成

我已将一个项目导入到 Eclipse IDE 中,但由于 R 文件未自动生成,因此出现错误。

如何编辑 R 文件以使其符合我的项目要求?

有帮助吗?

解决方案 3

好的,我固定它:

当我改变了清单的目标1.5版本,千万错误出现,只有一个是不相关的R类别的inexistance - 清单文件属性“targetSdkVersion”和“maxSdkVersion”根本不存在的SDK 1.5

由于这种R类别未能产生。

其他提示

另一个计算器问题,有人回答这样的:你必须摆脱在XML文件中的警告和错误(语法和链接)。这加上做清洁/建造项目。

项目 - >清洁,并选择建设项目中的选项

我发现这种情况发生在我身上,布局损坏,一切都崩溃了。放松,这就像你第一次学习编程时犯的老错误一样,你忘记了一个分号,就会产生一百个错误。许多人惊慌失措,按下所有按钮,使事情变得更糟。

解决方案

  • 确保任何事情 R. 链接没有损坏。如果它损坏,ADK 可能无法重新生成 R。 修复 XML 文件中的所有错误.
  • 如果你以某种方式击中某物并创造了 import android.R 在你的活动中, 去掉它.
  • 跑步 项目 -> 清洁. 。这将删除并重新生成 R 和 BuildConfig。
  • 确保 项目 -> 自动构建 被勾选。
  • 等待 几秒钟后错误就会消失。
  • 如果不起作用,请删除 /gen/ 文件夹中的所有内容
  • 如果仍然不起作用,请尝试 右键单击您的项目 -> Android 工具 -> 修复项目属性.

如果R不再生怎么办

当您的 xml 文件损坏时,通常会发生这种情况。

  • 检查 XML 文件中的错误,主要是 /res/ 文件夹中的错误
  • 常见的地方是 /layout/ 和 /values/ 特别是如果您最近更改了其中之一
  • 检查AndroidManifest.xml,我发现经常更改字符串,而忘记更改AndroidManifest.xml中的字符串名称。
  • 如果找不到问题。 右键单击 /gen/ -> 从本地历史记录恢复...-> 勾选 R.java -> 单击恢复. 。这并不能解决问题,但会清除额外的错误,使问题更容易找到。

我知道这里已经有很多答案了,但这是 Google 上的第一个链接,所以我在这里整理了所有建议,希望它能帮助其他对此不熟悉的人:)

我遇到了类似的问题,在添加一些图标和布局文件后,R.java 文件没有重新生成。我尝试清理和重建,但事情变得更糟,因为原始的 R.java 文件消失了并且仍然没有重新生成。最终我意识到生成 R.java 的编译器一定存在编译器错误,而我们在控制台中没有看到这些错误。幸运的是,我很早就注意到了

  1. 如果一个 .xml 文件引用另一个不存在的 .xml 文件,则这是一个错误
  2. 文件名中包含大写字母是错误的(为什么禁止这样做,我喜欢驼峰式大小写)。

不管怎样,在将我的图标和 .xml 文件重命名为全部小写,然后修复 .xml 文件中的所有引用后,瞧,R.java 被重新生成了。当我停下来吃午饭时,正好感觉良好:-)

再次生成 R 文件:

  1. 修改layout->activity_main.xml中的一些内容
  2. 保存文件
  3. 项目->清洁...

只需删除位于 gen 目录中的 R 文件,然后尝试 Project->Clean。然后再次构建您的应用程序。

您还可以右键点击project -> Android Tools -> Fix Project Properties。这应该导致要重新生成的R.java类。

我的问题是在清单文件。 我已经删除了启动图标,并没有引用清单上的新的:)

我重新打开蚀,编辑的我的XML文件的一个,然后发现,我activy类是闯民宅android.R代替我的包“R”: - )

为了重新生成 R.class,您必须尝试多种技术。

  • 从 java 源文件中删除所有 R 导入: import R.android
  • 确保通过转到“窗口”->“显示视图”->“问题”打开“问题”面板
  • 如果 xml 资源中确实存在一些错误,则需要更正这些错误。就我而言,我必须更改 id 属性以包含“+”号,如下所示: android:id="@+id/grp_txt"
  • 现在继续执行Project->Clean
  • 最后做项目->关闭,项目->打开

“+”号表示新的资源 id,并强制 aapt 工具在 R.java 类中创建新的资源整数。

如果您使用的IntelliJ IDEA,你可以单击生成器 - 重建项目

如果您通过“ Project Clean”(不要这样做)在您的ProjectFile - >从当地历史记录恢复的“ Project Clean”(不要执行此操作)在Eclipse中删除了R。

重新创建你的R

我的情况:

  • 损坏的 xml 导致 R 中出现错误。(因为 ä、ö、ü、id 中的字母)
  • clean 项目删除了我的 R。

我做了什么:

  • 从本地历史重新创建 R
  • 检查我的类中是否存在错误的 R 导入(例如 import android.R)并将其删除
  • 修复了该 xml 文件并将其内容保存在外部 txt 文件中
  • 从我的项目中完全删除了 xml。
  • 运行我的项目一次
  • 将固定的 xml 放回到原来的位置

和...

  • 像绿巨人一样惊慌失措后,无缘无故地给了我女朋友一个大大的拥抱。

我的问题是在我的XML文件中的错误。错误并不总是在Android通用XML编辑器或Android常见的清单编辑器会自动检测到,所以请尝试使用普通的文本编辑器来代替。例如,某种方式从一个.java文件一些随机乱码将插入了我的表现和strings.xml中的文件。

右键点击任何XML文件(最有可能在/ res文件夹或AndroidManifest.xml中),然后单击“打开方式”,然后选择“文本编辑器。”确保一切正常,然后保存。此外,确保启用“自动构建”为您的项目。我已经删除了我的R.java文件,它是从头开始重建,所以没必要把它从当地的历史还原。

尝试添加新的“机器人XML文件”,例如,该文件夹/res/layout。这可能会导致插件以再生R类。

您可以只修改/ res文件夹的任何XML文件,甚至只是添加一个空格和保存,它会重新生成。

我有同样的问题 - “R”缺失。而没有建议给予帮助这里。幸运的是,我找到了原因 - 莫名其妙的Eclipse迷路项目 - 属性 - 目标。这是未设置。我不知道到现在为止,什么做了它,但它放回帮助。 所以,注意! - 失踪R可以意味着丢失的目标,太

我已尝试所有上述解决方案。但遗憾的是他们并没有解决我的问题。 我R.java被我贴了新的图片为我绘制的文件夹中很快消失了。 阅读对此问题的回答我试图删除图标我的以前粘贴(而建立自动启用)和一切都很好afetr后。希望这将帮助别人!

我有这样的问题,在我的项目的包我只需右键点击并生成项目。瞬间R级出现在包根。

在谷歌搜索的情况下的时候,像我一样别人发现这个线程:

我似乎是在一段时间内同样的问题,一些挖后,我注意到,R.java文件得到了正确构建,但我的源文件被忽略只有一个。对于该特定文件的问题是,Eclipse的已经“有益”加入在顶部以下行:

import android.R;

这有效地隐藏了项目ř东西。只是将其删除,一切都将再次被罚款......

您可以使用Eclipse的“从本地历史还原”恢复旧R档,如果它已被删除。之后,你可能看到从建立你的文件(我见过其他错误不是真正帮助解决问题之前,其)保持的Eclipse。

可能是你可以去项目属性,选择Android的选项,然后定义目标的项目。一旦你申请选定的目标API这个项目,它会自动生成R.java。

主要是一个具有无效布局文件的问题。 打开“问题”视图,并寻找在XML布局文件错误回报。解决这些问题和R类别将被重新创建。

在我的情况下,没有一个真正的错误。问题视图在XML布局显示错误。编辑器显示XML错误了。只是使用自动格式化与“CTRL-F”“固定”的XML“错误”和R类被再创造重新格式化的XML。

您可以直接删除从您的项目中R.java文件,它会重新生成假设你已经自动构建启用。如果你没有建立自动启用简单地转到项目 - >建立所有

对我来说,它是一个字符串值资源不会被定义...后我添加它用手strings.xml中,R类被自动地再生!

这个问题从现有项目导入时通常发生。尝试从修复所有错误的所有的 .XML 资源文件夹,以及清单文件的文件。最可能的错误是在 “的 match_parent ” 参数中所示,它改为 “的 FILL_PARENT ”。当所有的错误都清楚,R.java将出现。

如果有任何.xml文件没有错误。尝试编辑任何xml文件(如删除一个字母并键入回),然后保存该文件,这将导致产生的R.java。

我有一个问题,即findViewById(R.id.edit_text)但返回一个TextView不是的EditText。我认为这个问题是R.id类有错误的ID号,然后,我清理项目,那么它工作正常。

在我的情况下,它是使我的R档不重建不适当名为XML文件。这并没有在包资源管理器中显示出来,但它在logcat中所示。当心你的资源文件的任何警告存在。不管你有多少次清理项目,R档不会重建,直到这些错误的照顾。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top