我发现我的R.java从来没有更新过,所以它不包含关于新资源的信息,所以我决定删除它,并认为Eclipse会生成一个新的资源。但这并没有发生,我现在没有R.java。我怎么能再生一个?
我用的是Windows 7。
其中一条评论是:“做项目->清洁是我遇到问题的原因。删除R.java…不管出于什么原因,插件没有重新生成文件。”
我发现我的R.java从来没有更新过,所以它不包含关于新资源的信息,所以我决定删除它,并认为Eclipse会生成一个新的资源。但这并没有发生,我现在没有R.java。我怎么能再生一个?
我用的是Windows 7。
其中一条评论是:“做项目->清洁是我遇到问题的原因。删除R.java…不管出于什么原因,插件没有重新生成文件。”
当前回答
在Eclipse中,只需使用Project——> clean来清理项目。的 R.java将被自动(重新)创建。
如果由于某种原因,这不起作用:确保你的layout.xml文件不包含错误。Eclipse在这里似乎有点bug:有时它不会在XML或包资源管理器中标记错误。在这种情况下:在使用“clean”后查看“console”或“problems”视图。所有错误都应该显示在那里。修好它们,重新清理。
注意:没有必要修复因为缺少R文件而导致的错误!只需修复XML文件和其他项目错误,并使用清洁!
其他回答
我有这个问题。我不小心把这个删了
xmlns:tools="http://schemas.android.com/tools"
在我的XML文件和Java文件中,这开始导致整个项目的构建错误。当我重新输入我删除的内容时,它又工作了:)
Android开发者提示:再生R.java。
我没有继续发现在野外发现的所有可以想象的问题,而是决定利用经过验证的方法盯着代码。这样做了一段时间后,我在res文件夹下发现了几个红色的家伙。它们是我当前重新设计工作的剩余部分,我打算在事情出错之前删除它们。果然,当我在它们上点击Del时,该死的R东西自动神奇地重新出现。
一句话:从项目中删除所有不需要的文件,从清单文件中删除不需要的代码。
r .类可能突然丢失的一个原因是XML文件中出现错误。例如,当您添加一个名称中带有大写字母的XML文件时,例如myCoolLayout.xml,这是不允许的。或者当您的引用不指向现有文件时,等等。
很明显,这个问题有很多原因。如果你在64位的linux机器上,你第一次设置ADT,你可能会遇到这个问题,R不能自动生成。检查控制台选项卡,你可能会看到类似的错误:
'No such file or directory' while attempting to get adb version from '/home/patrick/code/android-sdks/platform-tools/adb'
如果是这种情况,你需要安装ia32-libs,使用如下代码:
sudo apt-get install ia32-libs
详见:Android adb未找到
如果使用Maven,所有这些答案都不能工作。我的解决方案是
<genDirectory>${project.basedir}/gen</genDirectory>
到android-maven-plugin的配置部分。