在Eclipse中,我从源代码创建了一个项目,现在它显示了错误——“R不能被解析为变量”。从我在这里找到的,我已经清除和重建了项目,但R文件仍然没有出现在/gen文件夹中。

什么好主意吗?


当前回答

我的问题很奇怪,花了一些时间才找到。src文件的包改变了,包中的最后一个条目被删除了。例如,最初我的类MyActivity.java在包com.abc.client.test.app中,但在我添加了用户权限后,应用程序被删除,包被重命名为com.abc.client.test。我不知道是怎么发生的。重命名包并将java文件放在正确的位置解决了这个问题。

其他回答

不要担心。首先,您可以清理项目,然后运行项目。如果这不起作用,请点击以下链接:

这里是解决这个问题的最佳方法:[Android开发-我的R.Java文件在哪里?]] [2] R.java不能再生 R无法解决- Android错误 R不能被解析为一个变量 R不能解析为一个变量—邮件列表条目 修正:R不能被解析为一个变量

如果Clean/Rebuild Project不起作用,请检查AndroidManifest.xml中的包名。

当你在AndroidManifest.xml文件中修改包名时,会出现“R不能被解决”的问题。它使用你的Android包名在“gen”目录下创建一个子目录,它存储R.java文件。

你可能在你的*.xml文件中有一个错误:布局等。

对我来说,在我的SDK的末尾有一个缺失的斜杠。在Eclipse >首选项> Android > SDK位置

例如,改变

/home/matt/android-sdk-linux

to

/home/matt/android-sdk-linux/

在我的情况下,R.java没有被生成,因为一个分层的父错误,这反过来被更新了一个或多个Eclipse插件(Go Eclipse—>Help—>Check for Updates)所修复。