我已经将一个项目导入到我的 Eclipse IDE 中,但它给了我一个错误,因为 R 文件不是自动生成的。
如何编辑 R 文件以使其符合我的项目要求?
我已经将一个项目导入到我的 Eclipse IDE 中,但它给了我一个错误,因为 R 文件不是自动生成的。
如何编辑 R 文件以使其符合我的项目要求?
在 另一个 stackoverflow 问题中,有人回答了这个问题:您必须摆脱 xml 文件中的警告和错误(语法和链接)。这加上做一个干净/构建项目。
Project -> Clean,然后选择构建项目的选项。
我发现这种情况发生在我身上,布局损坏,一切都爆炸了。放松,这就像你第一次学习编程时的那个老错误,你忘记了一个分号,它会产生一百个错误。许多人惊慌失措,按下所有按钮,让事情变得更糟。
R.
链接到的任何内容都没有损坏。如果它坏了,ADK 可能不会重新生成 R。修复 XML 文件中的所有错误。import android.R
在您的活动中创建,请将其删除。这通常发生在您的 xml 文件损坏时。
我知道这里已经有很多答案了,但这是谷歌上的第一个链接,所以我在这里编译所有建议,希望它可以帮助其他新手:)
好的,我修复了它:
当我将清单更改为目标 1.5 版本时,出现了数百万个错误,只有一个与不存在 R 类无关 - 在清单文件属性中,sdk 1.5 中不存在“targetSdkVersion”和“maxSdkVersion”
由于这个 R 类无法生成。
我有一个类似的问题,在我添加了一些图标和布局文件后,没有重新生成 R.java 文件。我尝试清理和重建,从那以后事情变得更糟了,原来的 R.java 文件消失了,仍然没有重新生成。最终,我意识到生成 R.java 的编译器一定存在编译器错误,而我们没有在控制台中看到这些错误。幸运的是,我之前注意到了
无论如何,在将我的图标和 .xml 文件重命名为全部小写,然后修复 .xml 文件中的所有引用之后,瞧,重新生成了 R.java。当我停下来吃午饭时,正好赶上感觉良好 :-)
再次生成 R 文件:
只需删除位于 gen 目录中的 R 文件,然后尝试 Project->Clean。然后再次构建您的应用程序。
您也可以右键单击project -> Android Tools -> Fix Project Properties
. 这应该会导致重新生成 R.java 类。
我重新打开 Eclipse,编辑我的一个 xml 文件,然后发现我的活动类引用的是 android.R 而不是我的包“R”:-)
我的问题出在清单文件中。我已经删除了启动器图标,并且没有在 Manifiest 上引用新的 :)
为了重新生成 R.class,您将不得不尝试多种技术。
import R.android
android:id="@+id/grp_txt"
“+”号表示一个新的资源 ID,并强制 aapt 工具在 R.java 类中创建一个新的资源整数。
如果您使用 Intellij IDEA,您可以单击 Build - Rebuild Project
如果您通过“项目清理”意外删除了 Eclipse 中的 R(不要这样做)右键单击您的 Projectfile -> 从本地历史记录恢复...
重新创建你的 R
我的情况:
我做了什么:
和...
我的问题是我的 XML 文件中的错误。在 Android Common XML Editor 或 Android Common Manifest Editor 中并不总是自动检测到错误,因此请尝试改用常规文本编辑器。例如,不知何故,来自 .java 文件的一些随机乱码已插入到我的清单和 strings.xml 文件中。
右键单击任何 XML 文件(很可能在 /res 文件夹或 AndroidManifest.xml 中)并单击“打开方式”,然后选择“文本编辑器”。确保一切看起来都不错,然后保存。此外,请确保为您的项目启用“自动构建”。我已经删除了我的 R.java 文件并且它是从头开始重建的,所以不需要从本地历史中恢复它。
例如,尝试将新的“Android XML 文件”添加到该/res/layout
文件夹。这可能会导致插件重新生成R
类。
您可以只修改 /res 文件夹中的任何 xml 文件,甚至只需添加一个空格并保存,它将重新生成。
我有同样的问题 - “R”丢失。这里给出的建议都没有帮助。幸运的是,我找到了原因——不知何故 Eclipse 丢失了 Project-Properties-target。它未设置。直到现在我才知道,它做了什么,但把它放回去有帮助。所以,注意力缺失的 R 也可能意味着缺失的目标!
我已经尝试了上述所有解决方案。但不幸的是,他们并没有解决我的问题。将新图片粘贴到可绘制文件夹后,我的 R.java 就消失了。在阅读了这个问题的答案后,我试图删除我之前粘贴的图标(在自动启用时),一切都很好。希望这会对某人有所帮助!
我遇到了这个问题,我只是右键单击我的项目和构建项目的数据包。R 类立即出现在数据包生成中。
万一其他人在谷歌搜索时发现了这个线程,就像我一样:
有一段时间我遇到了同样的问题,经过一番挖掘后,我注意到 R.java 文件已正确构建,但只有一个源文件被忽略了。这个特定文件的问题是 Eclipse 在顶部“有用地”添加了以下行:
import android.R;
这有效地隐藏了项目 R 的东西。只需删除它,一切都会再次好起来的......
如果旧的 R 文件已被删除,您可以使用 Eclipse 的“从本地历史恢复”来恢复它。之后,您可能会看到是什么阻止了 Eclipse 构建您的文件(我见过比以前真正帮助解决问题的其他错误)。
可能您可以转到项目属性并选择 Android 选项,然后定义项目的目标。为该项目应用选定的目标 API 后,它将自动生成 R.java。
主要是无效布局文件的问题。打开“问题”视图并在 XML 布局文件中查找错误。修复它们,将重新创建 R 类。
就我而言,没有真正的错误。问题视图在 xml 布局中显示错误。编辑器也显示了 xml 错误。只需使用带有'ctrl-f''fixed' xml'error'的自动格式化程序重新格式化xml,然后重新创建R类。
您可以从项目中删除 R.java 文件,假设您已自动启用构建,它将重新生成。如果您没有自动启用构建,只需转到项目->构建全部
对我来说,这是一个未定义的字符串值资源……在我手动将它添加到 Strings.xml 后,R 类会自动重新生成!
从现有项目导入时,通常会发生此问题。尝试修复res文件夹中所有.xml文件以及Manifest文件中的所有错误。最有可能错误显示在“ match_parent ”参数中,将其更改为“ fill_parent ”。清除所有错误后,将出现 R.java。
如果任何 .xml 文件都没有错误。尝试编辑任何 xml 文件(例如删除一个字母并重新输入)然后保存文件,这将导致生成 R.java。
我有一个问题,findViewById(R.id.edit_text)
但返回的是 TextView 而不是 EditText。我认为问题是 R.id 类的 ID 号错误,然后,我清理项目然后它的工作正常。
就我而言,这是一个名称不正确的 XML 文件,导致我的 R 文件无法重建。这没有显示在包资源管理器中,但显示在 LogCat 中。留意那里关于您的 res 文件的任何警告。无论您清理项目多少次,在这些错误得到处理之前,R 文件都不会重建。