【问题标题】:Your project contains error(s), please fix it before running it您的项目包含错误,请在运行前修复它
【发布时间】:2011-06-24 16:03:39
【问题描述】:

我正在开发一个简单的 Android 应用程序。但是当我运行 Eclipse 时,它​​显示以下错误:

您的项目包含错误,请在运行前修复它。

我在我的项目中找不到任何错误,或者我的应用程序中没有错误。 应用程序名称下有一个红叉,但它不在另一个文件名下。

还有其他人有这个问题吗?

【问题讨论】:

  • 不幸的是,这些都不适合我...创建新项目和删除 .android...没有用。显然 Eclipse 丢失了一些设置并拒绝运行任何新项目,无论是 Java 还是 Android
  • 始终查看“标记”面板。那里总结了错误。

标签: android eclipse


【解决方案1】:

这通常来自构建路径中的错误。

如果您使用的是 eclipse,您可以添加一个视图,其中列出了所有称为“问题”的错误:

否则,您可以尝试清理项目,这通常可以解决一些问题。

最后,如果您从 IDE 外部添加或更改资源,您需要重新加载资源并进行清理。

编辑 (匿名用户评论)

这也可能是由过期的“调试证书”引起的,修复如下:

如果一切都失败了,那么这就是解决方案:

删除~/.android/debug.keystore 下的调试证书(在 Linux 和 Mac OS X 上);该目录类似于 Windows 上的 %USERPROFILE%/.android

当您下次尝试构建调试包时,Eclipse 插件应该会生成一个新证书。您可能需要清理然后构建以生成证书。

这也是对“setContentView(R.layout.main);”的另一个修复错误说它在实际生成时找不到 R.layout.main。 (R 不能解析为变量)。

这也是错误“您的项目有错误...”的另一个修复程序,您找不到任何错误。 生成新的调试证书后仍需要清理和重建。

【讨论】:

  • 了解问题并不总是针对源代码文件的行号报告,这一点很重要。整个项目的问题,如构建路径问题,将附加在项目级别。除了“问题”视图之外,您将无法在任何地方看到问题文本。
  • 过期的调试密钥通常都会让我进入。每年。我真的应该在我的日历或其他东西上放一个提醒。
  • 对我来说,“问题”视图中没有可见的错误,但 Eclipse 抱怨错误!删除~/.android/debug.keystore 确实修复了它!我仅在 4 个月前在这台 Mac 上安装了 android SDK,所以它应该不会过期。 (使用 Eclipse Juno)
  • 我的密钥在 ~/.ssh/android-keystore,删除它解决了我的问题。
【解决方案2】:

首先进入菜单中的Window -> Show View -> Error Logs。如果您有任何错误日志,它将显示错误日志。然后尝试清理项目并重新构建它。

【讨论】:

  • 错误日志视图显示 Eclipse 插件中的故障。它有助于报告问题,但条目不会指向用户应用程序代码中的问题。为此,您需要“问题”视图。
  • 我有类似的问题(但使用 NDK/C++)。我的 NDK+android 项目编译成功,但 Eclipse 不允许运行/调试它。我在#include 上有一个错误(我没有向资源添加 STL 路径,并且不想这样做)。这怎么可能,有关闭它的选项吗?我想看看那个不那么真实的“错误”,但我想运行应用程序(NOT 包含任何编译/链接错误)。
  • 对我来说问题是调试证书。打开“问题”窗口的建议也很有帮助。我正在查看没有显示任何内容的“错误”窗口。
  • 我在错误日志中收到此错误:生成最终存档时出错:无法获取调试签名密钥。
【解决方案3】:

嗯,在我的例子中,一些库在:

项目 >> 属性 >> Java 构建路径 >> 库

我只需要删除副本,它就可以正常工作,无需任何清洁或刷新。

【讨论】:

  • 从项目 >> 属性 >> Java 构建路径 >> 订单和导出选项卡中取消选中 jar 文件
  • 万一注意符号错误!在项目中显示。我解决了左侧面板中的以下步骤项目>>属性>>Java构建路径并在右侧面板(3列)jar文件中选择库是错误的。只需在弹出窗口的同一项目库文件夹中添加 JAR 文件即可。删除错误的 lib 文件。它对我有用。
【解决方案4】:

我在一个现有项目中看到了这一点。我做了一些编辑,但没有导入任何新内容。重新启动 Eclipse 没有帮助。

Project->Clean 确实解决了问题。

【讨论】:

    【解决方案5】:

    我在工作区中导入新项目时经常遇到此错误。

    原因:一些必要的文件(如R.Java)没有在其各自的包中生成。

    治愈:清理并构建项目,所有需要自动生成的文件都将在构建项目后就位。

    祝你好运。

    【讨论】:

      【解决方案6】:

      这发生在我身上。在我的系统格式化后,
      当我导入项目时,它显示相同的错误

      删除第一个 debug.keystore 文件然后转到 -

      项目 -> 项目属性 -> 选择库 -> 删除 -> 再次添加库。

      它对我有用......

      【讨论】:

        【解决方案7】:

        进入项目菜单,点击清理菜单项。

        然后关闭eclipse并重新打开并尝试编译..

        这是您有时会发现的软件故障。

        【讨论】:

          【解决方案8】:

          如果您移动所需的文件,也会发生这种情况。只需检查问题视图(菜单window -> show view -> Problems)告诉here

          【讨论】:

            【解决方案9】:

            我遇到了同样的问题。一种可行的解决方案是创建一个全新的项目,但我认为没有必要这样做。对我来说,问题是自动生成的调试证书已经过期。删除此文件允许 Eclipse 重建该文件,从而解决了问题。您不能使用无效证书运行应用程序,无论它是调试证书还是发布证书。请注意,清理我的项目不起作用。有关更多信息,请参阅: "Debug certificate expired" error in Eclipse Android plugins

            【讨论】:

            【解决方案10】:

            最近我遇到了这个错误。我真的在一个角落里没有帮助,然后我想通了。出现此错误的原因可能如下:

            • 项目代码出错
            • 外部库文件到项目的链接不正确
            • 最重要的是:如果您的 debug.keystore 文件已过期。

            前两种情况很容易识别,但第三种情况就像在黑暗的房间里寻找黑匣子。

            所以除了 Project -> Clean 之外,还要删除你的 debug.keystore 文件。

            我正在使用 Mac + Eclipse 所以要删除,我在终端中编写了命令rm ~/.android/.debug.keystore

            【讨论】:

              【解决方案11】:

              有没有办法忽略项目中现有的错误。在 java 项目的情况下,eclipse 允许的东西类似。

              在我的情况下,错误存在于 jni 目录中。即使 ndk-buid 成功,也会显示错误。所以我想做的就是忽略eclipse报告的错误。

              如果错误确实是错误,那么我应该在 ndk-build 期间得到未解析的符号。

              我已确保包含路径中有标准的 android 包含。

              我的项目也是 android/c/c++ 类型。

              我有两个与项目相关的构建器 1. 标准安卓生成器 2. 我明确创建的自定义 ndk 构建器。

              【讨论】:

              【解决方案12】:

              在课堂上模拟自己的一些错误。然后保存它,它会显示比您模拟的更多的错误。对我来说,这是不正确的导入,这有帮助。

              【讨论】:

                【解决方案13】:

                我也遇到过类似的问题。

                在“问题”选项卡下,我发现一条错误消息“生成最终存档时出错:调试证书已在 2/22/12 1:49 PM 过期”

                所以我的建议是查看问题选项卡以获取更多信息。

                再见

                【讨论】:

                  【解决方案14】:

                  如果以上方法都不起作用,请检查Project文件夹的 READ ONLY属性,如果是Read-Only,编译器将无法覆盖资源,R.java等dex APK等文件,因此会发生这种情况.. 这发生在我身上,经过长时间的斗争我解决了.. 快乐编程。

                  【讨论】:

                    【解决方案15】:

                    由于某种原因,eclipse 只显示了一个 ! root 上的错误并且没有指定它是什么错误。 进入 Windows -> 显示视图 -> 问题。您可能会在那里找到所有以前的错误,删除它们,进行干净的构建并再次构建。您会看到确切的错误。

                    Eclipse shows an error on android project but can find the error

                    【讨论】:

                      【解决方案16】:

                      我在尝试使用 Eclipse Juno在 Mac OS X 上运行 Android for Programmers 中的 Doodlz 应用程序时遇到了这个确切的问题>.

                      从书中下载并解压缩演示后,我忘记更改文件的权限。它们在我的系统上是只读的,所以这是第一个问题

                      第二个问题已通过在 Eclipse 上选择构建目标来解决。通过转到 Project > Properties 并单击左侧面板上的 Android 字段,可以选择一个选项作为 Project Build Target,在我的情况下是:

                        Target Name     Vendor         Platform    API Level
                      > Google APIs     Google Inc.    4.0.3       15
                      

                      然后清理和重建项目没有显示错误。

                      最后,要运行应用程序,请右键单击包(在包资源管理器选项卡上),然后选择: 运行方式 > Android 应用程序

                      【讨论】:

                        【解决方案17】:

                        只需删除~/.android/debug.keystoreProject->Clean 下的调试证书即可解决问题。

                        【讨论】:

                          【解决方案18】:

                          在 XP 上从 Documents&settings\User\ 和 Win7 上的 \User\ 中删除 .android 文件夹。再次重新创建 AVD 并创建一个新项目。

                          【讨论】:

                            【解决方案19】:

                            对我来说导致这个问题的原因不是以上任何一个,而只是我在发布后将 manifest.xml 文件中的“可调试”属性保留为 false。哦!

                            当然,LogCat、错误日志、控制台或问题窗口都没有提醒我这一点..

                            【讨论】:

                              【解决方案20】:

                              当我将项目复制到另一台计算机时,我遇到了同样的错误。

                              然后我检查了两台机器上项目的所有属性,唯一不同的是 Java 构建路径中的项目顺序 - 选项卡顺序和导出。

                              我将 Android X.X.X 和 Android Dependencies 项移到列表中其他 2 项的上方(在我的情况下是 src 和 gen 文件夹),瞧,它又工作了!

                              我不确定不同的顺序是否真的是问题,但至少更改它(并再次保存属性)似乎有帮助...

                              【讨论】:

                                【解决方案21】:

                                更新 SDK 和 ADT 后,我遇到了完全相同的问题。 通过删除C:\Users\USERNAME\下的.android文件夹(隐藏)解决了我的问题

                                【讨论】:

                                  【解决方案22】:

                                  当我尝试使用 Maven 时,这发生在我身上。

                                  右键项目 -> Maven -> 禁用 Maven 性质 为我解决了问题。

                                  【讨论】:

                                    【解决方案23】:

                                    是的,这是一条相当神秘的信息。如果您的项目有问题(比如您过去一直在处理的项目),那么您会收到此消息(并且当前项目的问题/错误日志窗格中没有消息)。

                                    您可能只想运行当前项目。这可能完全没问题。只需单击“运行”按钮右侧的向下箭头即可选择您的项目。

                                    【讨论】:

                                      【解决方案24】:

                                      尝试更改您的工作区。我不确定这是确切的解决方案。在我改变工作空间之前,我确实遇到过同样的问题。

                                      【讨论】:

                                        【解决方案25】:

                                        就我而言,它发生在 ADT 22 上。

                                        我选择不创建 Activity。

                                        在我将“appcompat_v7”作为库项目删除之后。我工作。

                                        【讨论】:

                                          【解决方案26】:

                                          我遇到了类似的问题,我无法运行我的项目,但在代码中没有发现任何问题。在错误日志面板中,它说“无法将 P/ 作为父级添加到段 P/ 的列表中”。 重启 Eclipse 解决了这个问题。

                                          【讨论】:

                                            猜你喜欢
                                            • 1970-01-01
                                            • 2012-03-31
                                            • 1970-01-01
                                            • 1970-01-01
                                            • 2014-09-06
                                            • 2015-06-30
                                            • 2023-03-07
                                            • 1970-01-01
                                            • 2019-12-10
                                            相关资源
                                            最近更新 更多