我发现我的R.java从来没有更新过,所以它不包含关于新资源的信息,所以我决定删除它,并认为Eclipse会生成一个新的资源。但这并没有发生,我现在没有R.java。我怎么能再生一个?
我用的是Windows 7。
其中一条评论是:“做项目->清洁是我遇到问题的原因。删除R.java…不管出于什么原因,插件没有重新生成文件。”
我发现我的R.java从来没有更新过,所以它不包含关于新资源的信息,所以我决定删除它,并认为Eclipse会生成一个新的资源。但这并没有发生,我现在没有R.java。我怎么能再生一个?
我用的是Windows 7。
其中一条评论是:“做项目->清洁是我遇到问题的原因。删除R.java…不管出于什么原因,插件没有重新生成文件。”
当前回答
快速修复:
清单中的包名称需要与/src文件夹中的包名称相同,/gen文件夹中的包将自动复制。
详细的观察:
观察/gen文件夹中的包的名称。在我的例子中,它与/src文件夹中的不同。
清单中引用的包是/gen文件夹的包。
我尝试添加一个名为/src文件夹的包到/gen文件夹,看看会发生什么,但这并没有解决问题。然后,我删除了与/src文件夹的包名不相同的包名。这个名称与/src文件夹不对应的包在我删除它后立即被重新创建。
由于清单中的包引用对应于正在被无意义地重新创建的包,并且与/src文件夹中的包不对应,这提示将package = "oldPackage"重命名为package = "srcFolderPackage"。
其他回答
我也有同样的问题。
检查Lint警告后,我看到警告资源R.string。App_name似乎未使用…,所以我删除了r.r string.app_name。
这个资源在AndroidManifest.xml中是必需的,尽管Lint警告我一个未使用的资源。我在清单中添加了“未使用的资源”,一切恢复正常。
我希望这能对某些人有所帮助。
我发现了一个解决方案,为什么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通信。
如果你使用Lint错误检查器,它将识别虚假的“R”导入。 一旦XML系统抓住了错误的一端,一切都完了!!
几乎可以肯定插入到genfile中的内容有问题。Eclipse不够聪明,无法显示问题是什么,甚至无法指出存在问题!
考虑一下您对任何XML或图像内容所做的最后一次编辑-并尝试“回滚”您的更改,如果需要可以手动进行。
我发现Eclipse有时出于某种原因不喜欢我的文件名,我必须更改它们。
所以,一个接一个地增加资源,确保一切都“有效”。当出现问题时,只需尝试对其进行一些更改,直到Eclipse接受它。
当genfile出现时,你知道它正在工作-如果没有问题,它会自动这样做。
Android在SDK构建工具ADT 22中添加了构建机制。您只需要执行以下步骤。
更新Android SDK工具 更新Android SDK平台工具 更新Android SDK构建工具 将构建工具的路径添加到path变量中。(路径到---- YOUR DIRECTORY-PATH\android-sdk\build-tools)
这将解决问题。