我发现我的R.java从来没有更新过,所以它不包含关于新资源的信息,所以我决定删除它,并认为Eclipse会生成一个新的资源。但这并没有发生,我现在没有R.java。我怎么能再生一个?
我用的是Windows 7。
其中一条评论是:“做项目->清洁是我遇到问题的原因。删除R.java…不管出于什么原因,插件没有重新生成文件。”
我发现我的R.java从来没有更新过,所以它不包含关于新资源的信息,所以我决定删除它,并认为Eclipse会生成一个新的资源。但这并没有发生,我现在没有R.java。我怎么能再生一个?
我用的是Windows 7。
其中一条评论是:“做项目->清洁是我遇到问题的原因。删除R.java…不管出于什么原因,插件没有重新生成文件。”
当前回答
我的AndroidManifest.xml文件有一个问题,没有生成R.java。
我认为解决方案是检查所有的XML文件,到处都是!
其他回答
我也有同样的问题,我最终发现了问题:在strings.xml中,我没有保留一行<string name="app_name">程序名</string>,这是在创建一个新的Android项目时默认存在的。我以为它只用于程序HelloWord,这是原来的程序。
然而,AndroidManifest.xml引用这个值,因此:
编译错误; =>没有更新R.java; => ID不被识别…
本网站建议:
如果你在项目上运行一个clean,它应该重新生成所有生成的Java文件,即R。
…和…
在Eclipse的Project菜单下,有一个自动构建的选项。 这将帮助您在每次修改时构建R.java文件 制造的。清洁……项目下也有选项。
这个网站提出了另一种解决方案。
今天下午我第一次遇到这个问题。即使当我创建一个新项目时,也不会生成R.java。我改变了工作场所,一切都恢复正常了。
如果你的AndroidManifest.xml文件引用了你存储在Strings .xml中的字符串常量,并且你在Strings .xml中重命名了这些字符串,你将需要在清单中更改它们,以使构建的一切都符合要求。
同样的情况也适用于任何引用您所更改的常量的布局.xml文件。不幸的是,Eclipse中的Markers视图和Problems视图都不会告诉您需要到哪里去修复这些问题——只是它们无法找到R.java。正如在其他答案中提到的,查看控制台,看看需要在哪里修复常量引用,然后再次清理项目。
我发现了一个解决方案,为什么R.class不被Eclipse重新创建后- 2清洁,构建等。
问题在strings.xml中:
<string name="hello">Hello World, HelloAutoComplete!</string>
<string name="app_name">HelloAutoComplete</string>
这些是Eclipse在创建项目时默认创建的。
当然,您需要根据自己的需求更改strings.xml。有时你会清除字符串。xml这两行代码:
它在AndroidManifest.xml文件中产生了一个问题:
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".HelloAutoComplete" android:label="@string/app_name">
所以它不能与strings。xml通信。