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

我用的是Windows 7。

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


当前回答

在阅读了许多帖子和YouTube视频后,我发现我们每个人都因为不同的原因丢失了R.java。

下面是我在Eclipse中修复这个问题的方法:

在gen文件夹中手动创建R.java并保存。 然后进入项目,点击“清洁”

将显示以下消息,您的文件将被自动重写:

手动修改了R.java !恢复到生成版本!

其他回答

如果你的AndroidManifest.xml文件引用了你存储在Strings .xml中的字符串常量,并且你在Strings .xml中重命名了这些字符串,你将需要在清单中更改它们,以使构建的一切都符合要求。

同样的情况也适用于任何引用您所更改的常量的布局.xml文件。不幸的是,Eclipse中的Markers视图和Problems视图都不会告诉您需要到哪里去修复这些问题——只是它们无法找到R.java。正如在其他答案中提到的,查看控制台,看看需要在哪里修复常量引用,然后再次清理项目。

我的问题是appcompat与我的项目不在同一个目录中。

我在用Ant编译我的应用程序时发现了这一点。

我在AndroidManifest.xml文件中有一个错误,所以在修复这个错误后,点击

运行- >清洁

它产生了R.java

在Eclipse中,只需使用Project——> clean来清理项目。的 R.java将被自动(重新)创建。

如果由于某种原因,这不起作用:确保你的layout.xml文件不包含错误。Eclipse在这里似乎有点bug:有时它不会在XML或包资源管理器中标记错误。在这种情况下:在使用“clean”后查看“console”或“problems”视图。所有错误都应该显示在那里。修好它们,重新清理。

注意:没有必要修复因为缺少R文件而导致的错误!只需修复XML文件和其他项目错误,并使用清洁!

主要是R.java文件与.xml文件和Java。我们知道XML标记,但是Java呢?因此,我们需要有一个唯一的id来标识标记。

这里的R.java文件主要与使用Java获取值的XML文件相关。