Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 没有生成R类_Android_Eclipse - Fatal编程技术网

Android 没有生成R类

Android 没有生成R类,android,eclipse,Android,Eclipse,R类的自动生成不再有效。 我试过Project->Clean。。。 所有xml文件上也出现了一条警告:“未检测到文档的语法约束(DTD或xml模式)。”这可能就是代码生成停止的原因。 知道如何再次生成R类吗?除非/res/文件夹中没有错误,否则不会生成R文件 如果/res/文件夹中没有错误,请尝试删除gen文件夹,然后右键单击项目->android->修复android设置。通常当您遇到此类错误时,这意味着您的一个资源中存在错误。在此之前,您是否添加了可绘图、更改了布局或添加/修改了任何资源?

R类的自动生成不再有效。 我试过Project->Clean。。。 所有xml文件上也出现了一条警告:“未检测到文档的语法约束(DTD或xml模式)。”这可能就是代码生成停止的原因。
知道如何再次生成R类吗?

除非
/res/
文件夹中没有错误,否则不会生成R文件


如果
/res/
文件夹中没有错误,请尝试删除gen文件夹,然后右键单击项目->android->修复android设置。

通常当您遇到此类错误时,这意味着您的一个资源中存在错误。在此之前,您是否添加了可绘图、更改了布局或添加/修改了任何资源?

例如,如果您创建了一个9-patch可绘制文件,则不能将image.png和image.9.png同时放在可绘制文件文件夹中,这将创建一个错误,Eclipse将变得疯狂。如果您在xml文件中犯了错误并保存了该文件,也会发生同样的情况。那么,只要您没有更正文件,就不能生成R类。

正如其他帖子所说,/res文件夹中不能有任何有错误的文件。如果是,则无法生成R.class文件。如果错误被修复,那么项目应该重新构建,R.class应该生成。如果没有,我相信你可以右键点击项目,然后安卓工具->修复项目属性。我想这就是@Macarse在project->android->fix android设置中的意思。我没有看到这些选项,但是Android工具->修复项目属性通常会帮我解决这个问题,或者有时候清理源代码也会奏效(右键单击项目->源代码->清理…)

希望这对你有帮助

:)


Jack

虽然如果资源中存在错误,R确实不会生成,但我发现问题在于Eclipse并不总是报告错误

在项目目录中执行此操作:

android update project -p .

然后从命令行生成。查看是否会出现任何有用的错误。

也可能发生这种情况,因为其中一个文件夹命名错误,从而影响android目录结构。在我的例子中,我尝试以我在这里看到的许多方式生成类R,直到我意识到我创建了一个文件夹“res/drawble”,而不是“res/drawable”。就像魔术一样,您只需进入Project->Clean并选中“Build Automatically”,它就会出现。

在我的例子中,它非常简单,只需定义以斜杠结尾的sdk位置。问题是它找不到appt.exe,因为它在../sdkplatform tools/aapt.exe中查找appt.exe,而不是在../sdk/platform tools/aapt.exe中查找appt.exe。以下是您的解决方案:

打开终端窗口并键入

sudo apt get安装ia32 libs

即使您使用的是64位操作系统,这也会再次帮助您。它对我来说非常有效。

我使用它,有一天R类停止生成(可能是在更新之后)

在编译器首选项中设置“外部生成”复选标记可修复此问题:


对于src类无法检测到我的R类的情况,我有了答案。只需确保R类所在的包的名称(appname->gen->package->R.class与您在src活动类中实际使用的相同。

找不到菜单项:project->android。只有project->properties->android,但这可能不是您的意思。res文件夹中唯一的一点是关于“无语法约束…”的警告这就是问题所在吗?我不知道为什么突然出现了那个警告,它从一开始就没有出现?对不起,我错了。这是res文件夹中的错误。但我花了一段时间才意识到。所有答案都是正确的,必须选择一个。警告“没有语法约束…”当我右键单击所有.xml文件并选择“验证”时消失。你是否尝试关闭清单文件并重新打开它?对于Eclipse也是如此?你应该在Eclipse的错误日志中看到错误,或者在Android控制台中看到错误,如果它们在某个布局中存在问题。非常感谢。这为我解决了问题。你必须解释更多,是什么ia32 libs?为什么它会有帮助?因为在错误消息中,它告诉我ia32 libs不存在。然后我执行了“sudo apt get install ia32 libs”,然后我工作得很好。R类现在运行得很好。我建议你也这样做。这也解决了我的问题。在我安装了ia32 libs之后,我做了一个“清理”在项目中,然后出现了R类。