我发现我的R.java从来没有更新过,所以它不包含关于新资源的信息,所以我决定删除它,并认为Eclipse会生成一个新的资源。但这并没有发生,我现在没有R.java。我怎么能再生一个?

我用的是Windows 7。

其中一条评论是:“做项目->清洁是我遇到问题的原因。删除R.java…不管出于什么原因,插件没有重新生成文件。”


当前回答

在我的例子中,R文件没有生成,因为我的res/文件夹中有同名的XML文件(例如,res/layout/filename.xml和res/values/filename.xml)。

在我更改了其中一个文件名后,我的R文件再次通过Build automatic选项生成。

其他回答

我也遇到了这个问题,不幸的是,这里的建议对我没有任何帮助。在尝试了很多事情之后,我终于发现了发生了什么,希望它能帮助到其他人。

昨天我用Android SDK管理器下载了很多新东西。之后,我更新了Android Eclipse插件。今天,在Eclipse“清理”之后,R文件消失并停止生成。

原因是,不知为何,可用sdk的列表(在首选项-> android下)是空的。在再次将其指向正确的目录后,它将重新加载并显示可用的sdk。当我关闭首选项并尝试另一个构建时,一切都恢复正常。

在附件的图片中,你可以看到已经填满的sdk列表。当问题发生时,它是空的。

希望这能对别人有所帮助!

我想强调糞_爺的答案。

我重命名了一个颜色从“listcolor”到“color_list”,但我没有抓住其他布局之一是引用它。所以(突然)我所有的R.string. x和R.layout. x在'R'上都失败了。

最后,我查看了控制台窗口并查看了错误。我认为它们都是R没有被发现的引用,但实际上,其中一个是'listcolor'没有被发现。一旦我修复了这个,其他错误就都消失了。

也许Eclipse插件的未来版本将允许您重命名这些XML文件中的资源,并将其传播到对它的所有引用中。

r .类可能突然丢失的一个原因是XML文件中出现错误。例如,当您添加一个名称中带有大写字母的XML文件时,例如myCoolLayout.xml,这是不允许的。或者当您的引用不指向现有文件时,等等。

查看Eclipse中的Problems选项卡总是很有帮助的。在我的情况下,我得到了一个“android无法解决目标‘android-8’”的错误消息,使R.java无法生成。因此,我将导入的目标纠正为我在默认情况下使用的目标。属性文件,然后我执行了一个清洁通过项目->清洁,瞧!自动生成R.java !希望能有所帮助!

如果您的R.java没有生成,解决方案之一是删除名为“blabla.out.xml”的布局文件。

删除此文件后,尝试从project -> Clean菜单中清理项目。