【问题标题】:Error: Unable to open class file R.java [duplicate]错误:无法打开类文件 R.java [重复]
【发布时间】:2011-04-17 07:48:27
【问题描述】:

全新安装了 Eclipse、JDK 和 android-sdk。

我目前在创建新项目时收到此错误

[2010-09-26 16:07:56 - Test] 错误:无法打开类文件 C:\workspace\Test\gen\com\example\test\R.java:没有这样的文件或目录

这是什么原因,我该如何解决?

Eclipse Helios 32 bit
java version "1.6.0_21"
Android sdk API 8

附:我是 Android 开发新手。

编辑:我尝试了您的大多数解决方案,但没有任何效果。所以我开始使用我朋友安装的 Eclipse Ganymede。

【问题讨论】:

  • 如果您的资源文件之一存在错误,则 R 文件不会生成。总是要寻找的东西。
  • 这可能只是Eclipse的刷新行为。构建完成后,只需右键单击项目并选择刷新 (F5)。
  • 我同意@schwiz,即使我有同样的上述问题并尝试了很多答案。没有什么对我有用。因为我在其中一个文件中出现了 xml 格式错误,所以我不知道在哪里删除了项目并再次导入,然后它只显示一个错误。那是格式错误。当我修复它并清理我的项目时,一切都很好。这是我的结论:我认为如果您在 xml 文件中有错误,那么下面的答案可能不起作用。如果您没有任何 xml 错误,那么下面的答案可能对您有用。
  • 我的一个 XML 文件中有一个错误。哦,我的上帝,在大约 50 个 xml 文件中手动查找错误浪费了我太多时间。这对于 eclipse 的一部分来说真的很糟糕,它没有提到错误的真正原因:(
  • 右键单击 Eclipse 图标,如果您使用的是 Windows 7,则选择以管理员身份运行。然后转到项目并选择清理。它会解决问题。

标签: java android eclipse r.java-file


【解决方案1】:

看看你的控制台。这是一个aapt aborted 错误。由于 aapt 是自动生成 R.java 的工具,因此没有生成 R.java。

由于 R.java 是一个自动生成的文件,它存储有关您的可绘制对象的信息,您应该重新构建您的项目。在此之前,请查看您的布局 xml 文件并检查它们是否有错误。

请注意,应该选择 Project -> Build All。也尝试运行您的项目。

【讨论】:

    【解决方案2】:

    在 Linux 上与 Eclipse Helios 64 位有一个几乎相同的问题,但我像你一样选择了“1.6.0”API。奇怪的是我可以打字。

    cat <the path it was moaning about>
    

    在控制台中它会正确显示。

    我创建了一个使用 Android 2.1 的新 AVD,这个问题神奇地消失了。可能是 Android SDK 或 Eclipse 中的错误?

    【讨论】:

      【解决方案3】:

      我有同样的问题,我需要做的就是创建项目并重新启动 Eclipse。

      //编辑:“包”树的完全折叠也可以。

      【讨论】:

      • 我想这和我发现的一样,我更喜欢你的方式:-)
      【解决方案4】:

      我自己在创建新项目时遇到了类似的错误。在搞砸之后,我尝试将 R.Java 文件移动到与我的项目 java 文件(src 文件)相同的位置。然后 Eclipse 看到我从它的位置删除了 R.Java 文件并创建了另一个文件,这似乎清除了错误.....我不知道是不是因为 eclipse 重建了文件然后看到了它或者什么但似乎现在工作。

      【讨论】:

      • 这对我有用一次。然后我做了一个 clean&build,我又得到了同样的错误。
      • 我这样做了,现在 eclipse 说 Unknown error: java.lang.NullPointerException
      • 但也许这是由 sg else 引起的错误,所以对我来说你的解决方案似乎奏效了
      • 我发现问题出在哪里......我的调试密钥已过期,我所要做的就是擦除它,然后当我回去清理所有内容时,eclipse 或 adt 生成了一个新密钥项目。它在我电脑上的 .android 文件中。它对你来说可能和我在不同的地方
      【解决方案5】:

      我会说,一旦您创建了项目并提到了 R.class 错误 --> 只需重新启动 Eclipse IDE,一切都会好起来的;)

      【讨论】:

        【解决方案6】:

        在包资源管理器中右键单击您的项目名称。然后单击“验证”。会好的。

        【讨论】:

        • +1 没有看到这个解决方案。我还有其他事情要做,但这似乎是最好的解决方案。
        【解决方案7】:

        1.-打开Eclipse 2.-打开窗口/首选项 3.-扩展JAVA选项 4.-选择构建路径 5.-选中“项目”选项并取消选中“文件夹”选项 6.-点击确定 7.-重启eclipse IDE

        让我们去代码吧!

        【讨论】:

          【解决方案8】:

          解决方法如下: 转到您的“工作区”文件夹并确保它不是“只读”

          【讨论】:

            【解决方案9】:

            这是一个非常烦人的错误。

            当我创建一个新的 android 项目时,这种情况 100% 发生。

            似乎对我有用的是删除文件(它确实存在并且我的用户可以访问),然后点击构建,它会重新生成它并停止抱怨。

            这显然是一个错误,因为有太多人只是通过填写新项目对话框中的框(比如我)得到它,甚至没有修改任何代码!

            【讨论】:

            • 确认删除 R.java 并让它重新生成有效。谢谢山姆·巴特尔。
            • 好建议!谢谢,这让我发疯了!
            【解决方案10】:

            创建项目后,右键单击 Eclipse 左侧选项卡上项目资源管理器中的项目文件夹。

            点击来源->格式。

            控制台会说:

            [2010-11-24 11:57:42 - YourProject] R.java 已手动修改!恢复到生成的版本!

            那你就可以走了。尝试运行您的项目,它会编译。

            【讨论】:

              【解决方案11】:

              只需清理和重建项目即可解决此问题。如何有一个链接到最新版本的 Eclipse for Android。 **面向 Web 开发人员的 Eclipse Java EE IDE。

              版本号:20100218-1602

              (c) 版权所有 Eclipse 贡献者和其他 2005、2009。保留所有权利。 访问http://www.eclipse.org/webtools**

              这里是使用 Eclipse 的 Android 教程的链接 http://developer.android.com/resources/tutorials/hello-world.html

              【讨论】:

                【解决方案12】:

                Eclipse 菜单 > 项目 > 清理

                【讨论】:

                  【解决方案13】:

                  在 Mac 中, 我选择项目>清理 之后,我取消选中自动构建 然后我运行该项目并且它可以工作:)

                  【讨论】:

                    【解决方案14】:

                    遇到了同样的问题。我可以通过执行以下操作来解决它:

                    1. 转到窗口/首选项/Java/构建路径
                    2. 选择“文件夹”并将输出文件夹更改为“gen”(这是 Android 查找生成的 java 文件的位置,但 eclipse 中的默认值为“bin”)。
                    3. 重启 Eclipse

                    Windows 7、Eclipse 3.5.2

                    【讨论】:

                      【解决方案15】:

                      Windows 7 64bit,以管理员身份运行 eclipse,为我解决了这个问题。

                      【讨论】:

                        【解决方案16】:

                        Configure buildpath .. 检查 android ,它有效,当然我遵循了上面提到的帖子之一窗口、首选项、java、java 构建路径和选定的项目, 然后创建了一个项目,并尝试构建相同的错误,然后我检查了构建路径,发现 android 未选中,检查并再次构建,它可以工作!

                        【讨论】:

                          【解决方案17】:

                          删除 Eclipse 工作区目录和 Project->Clean->Build Project 上的只读属性 为我做了伎俩。然后我从 Eclipse 中单击项目目录并执行 F5 (Refresh) 。在gen文件夹中生成了R.java。

                          【讨论】:

                            【解决方案18】:

                            检查您的进口。如果这是偷偷进入的,那就删除它。

                            import android.R;
                            

                            【讨论】:

                              【解决方案19】:

                              我遇到了同样的问题,没有任何有用的错误。最后,我尝试删除我的调试密钥库并且成功了:

                              rm ~/.android/debug.keystore
                              

                              我看到有人提到过这一点,但我认为这不是我的问题,因为我没有收到任何与调试密钥库相关的错误。我在这里找到了答案:

                              "Debug certificate expired" error in Eclipse Android plugins

                              显然调试密钥库的有效期只有一年。

                              【讨论】:

                                【解决方案20】:

                                在我的情况下,按下清除后没有 gen 文件夹...

                                为了解决这个问题,我创建了一个新的 gen 文件,然后何时构建路径 => 配置路径,然后按下确定。

                                之后一切都很顺利:-)

                                【讨论】:

                                  【解决方案21】:

                                  以下步骤作为解决方案完成:

                                  1。折叠项目树结构

                                  2。进入工作区,去掉工作区的只读权限。

                                  3。右键单击“default.properties”并转到属性并取消选中eclipse中的只读权限。(这是在工作区显示构建错误时完成,即使没有编译问题)

                                  【讨论】:

                                    猜你喜欢
                                    • 2011-08-25
                                    • 2020-08-13
                                    • 2011-07-29
                                    • 2014-07-20
                                    • 2013-06-10
                                    • 1970-01-01
                                    • 2015-02-12
                                    • 1970-01-01
                                    相关资源
                                    最近更新 更多