R.Java没有生成

时间:2011-11-29 21:56:44

标签: android eclipse tortoisesvn r.java-file svn-client

我从google codes下载了代码,但是当我在eclipse IDE中导入该项目时 它没有生成R.Java文件。我搜索了许多博客和论坛,并尝试了很多东西,比如清理,重建,从现有源创建项目等但仍然面临问题。有些人提到它有时是由SVN客户端软件引起的,但他们都没有提到任何解决方案。如果你自己下载并找到确切的问题,我将非常感谢你们。

11 个答案:

答案 0 :(得分:16)

一般来说,要使其发挥作用:

  1. 将项目导入eclipse(文件 - >导入 - >常规 - >现有项目进入工作区)
  2. 在Eclipse中,手动创建gen文件夹并将其添加为源文件夹(右键单击您的项目,构建路径 - > gt;配置构建路径 - >添加文件夹)
  3. 清理您的项目,您希望生成R.java
  4. 但它没有,为什么?

    因为在res中有关于xml文件的编译错误(或错误?),所以R没有被编译(我在Mac上测试过):
    在res / values / styles.xml中:注释掉以下内容:

    <style name="iWindowTitleBackground" parent="android:WindowTitleBackground">    
      <item name="android:background">@drawable/title_bar</item>        
    </style>
    

    在res / values / themes.xml中:注释掉以下内容:

    <item name="android:windowTitleBackgroundStyle">@style/iWindowTitleBackground</item>
    

    然后做一个项目 - &gt;干净,你应该得到R.java。

    有bug报告在某些操作系统中无法解析parent =“android:WindowTitleBackground”,请查看here以获取更多详细信息。

答案 1 :(得分:3)

每当生成的R类未生成时,它表示由于XML资源的某些解析问题而生成它时出现问题。检查IDE中的错误控制台,找出具体错误。

常见问题是:

  • strings.xml中未转义的字符,例如you're而不是you\'re
  • 布局资源中缺少layout_widthlayout_height个标签
  • 缺少名称空间声明
  • Java不支持的变量名,例如由于大写或使用空格,连字符或其他不受支持的字符而导致的
  • XML中的任何其他类型的语法错误
  • 检查控制台以查找问题(图片附加在控​​制台定义了R未在项目中生成的原因的位置)

enter image description here

答案 2 :(得分:1)

当我遇到这个问题时,我删除了gen文件夹,它将使用所有r文件重新创建

答案 3 :(得分:1)

你会在文件顶部看到导入android.r或r.java我忘了。你需要删除这一行,清理项目,然后重新运行 基本上android使用R来引用项目中的项目。但是当那个import语句存在时,它会覆盖查看项目目录并使用androids

答案 4 :(得分:1)

我在尝试构建从code.google.com(here)下载的wiktionary示例代码时遇到了同样的问题。我已导入到使用Android 4.1和JDK 1.6的新Eclipse Juno项目中。

以下是构建项目后控制台的摘录:

  

W / ResourceType(6292):错误的XML块:标头大小103或总大小0大于数据大小0   C:\ Development \ WorkJava \ android \ sampleapps \ Wiktionary \ com.example.android.wiktionary.LookupActivity \ res \ values \ strings.xml:23:error:以非位置格式指定的多个替换;你的意思是添加formatted =“false”属性?   C:\ Development \ WorkJava \ android \ sampleapps \ Wiktionary \ com.example.android.wiktionary.LookupActivity \ res \ values \ strings.xml:23:错误:意外的结束标记字符串

以下是res / values / string.xml的摘录:

<resources>

<string name="app_name">Wiktionary Word of the Day</string>
<string name="app_descrip">A fast Wiktionary browser and Word-of-day widget</string>
<string name="app_credits">"All dictionary content provided by Wiktionary under a GFDL license.  http://en.wiktionary.org\n\nIcon derived from Tango Desktop Project under a public domain license.  http://tango.freedesktop.org".</string>
<string name="template_user_agent">"%s/%s (Linux; Android)"</string>
<string name="template_wotd_title">"Wiktionary:Word of the day/%s %s"</string>
<string name="template_wotd_archive_title">"Wiktionary:Word_of_the_day/Archive/%s/%s"</string>

<强>解

将format =“false”添加到最后3个字符串定义(包含两个%s替换占位符),如下所示,解决了问题。重建项目在gen文件夹中生成R.java。

<resources>

<string name="app_name">Wiktionary Word of the Day</string>
<string name="app_descrip">A fast Wiktionary browser and Word-of-day widget</string>
<string name="app_credits">"All dictionary content provided by Wiktionary under a GFDL license.  http://en.wiktionary.org\n\nIcon derived from Tango Desktop Project under a public domain license.  http://tango.freedesktop.org".</string>
<string name="template_user_agent" formatted="false">"%s/%s (Linux; Android)"</string>
<string name="template_wotd_title" formatted="false">"Wiktionary:Word of the day/%s %s"</string>
<string name="template_wotd_archive_title" formatted="false">"Wiktionary:Word_of_the_day/Archive/%s/%s"</string>

答案 5 :(得分:1)

在检查所有资源没有错误,清理,重建,重新启动等后,我仍然遇到此错误。

我通过从项目中过滤掉SVN文件来修复此问题。

How to exclude .svn directories from search in Eclipse?

虽然问题提到搜索,但解决方案也与编译中使用的文件有关。

重新启动,一切都很好。

答案 6 :(得分:1)

“。xml files”和“image files”并确保小写的名称。

答案 7 :(得分:0)

将工作区更改为新目录并设置其权限,使其可供所有人使用

答案 8 :(得分:0)

在我的情况下,我发现一个图像文件名包含res / drawable中的大写。更改图像名称后。它解决了,我可以建立项目

答案 9 :(得分:0)

我多次遇到这个问题。经验法则是检查.xml文件 .xml文件中存在任何问题时,不会生成R.java。

答案 10 :(得分:0)

只需点击

即可
Build --> Clean Project

这对我有用