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

我用的是Windows 7。

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


当前回答

我也有同样的问题。原来我有一个循环参考;我更改了在布局中引用的字符串名称。

我做了一个清洁和重建和R.Java文件没有被重新创建。我浪费了两个小时想弄清楚是怎么回事。我最终将布局项更改为一些临时文本,做了一个干净的项目,并创建了R.Java文件。

其他回答

如果全部回答不通过,可以从命令行执行资源生成: 进入Eclipse项目目录。 然后运行

aapt.exe package -f -v -m -S res -J src -M AndroidManifest.xml -I ANDROID_HOME/platforms/android-XXX/android.jar

只需用适当的值更改ANDROIRD_HOME和XXX。 您应该在屏幕上获得错误所在的信息。

Android在SDK构建工具ADT 22中添加了构建机制。您只需要执行以下步骤。

更新Android SDK工具 更新Android SDK平台工具 更新Android SDK构建工具 将构建工具的路径添加到path变量中。(路径到---- YOUR DIRECTORY-PATH\android-sdk\build-tools)

这将解决问题。

如果你使用Lint错误检查器,它将识别虚假的“R”导入。 一旦XML系统抓住了错误的一端,一切都完了!!

在main.xml中使用硬编码文本作为按钮文本属性时,没有出现任何错误,只有三个警告。 就像这样:

<Button
    android:id="@+id/scan"
    .....
    android:text="Scan" />

在将文本属性更改为android:text="@string/scan_device"后,立即生成了R.java。

因此,只要某个XML文件中出现任何错误/警告,它就会在我的机器/Eclipse上发生。

不过IntelliJ IDEA在警告方面没有这个问题。

我忘记在可声明样式的标记上设置name属性

<declare-styleable>
        <attr name="myView" format="reference"></attr>
</declare-styleable>

我用

<declare-styleable name="Theme">
        <attr name="myView" format="reference"></attr>
</declare-styleable>

我没有得到任何错误