即使构建成功,Eclipse c++ Type could not be resolved 错误

Posted

技术标签:

【中文标题】即使构建成功,Eclipse c++ Type could not be resolved 错误【英文标题】:Eclipse c++ Type could not be resolved error even though build is successful 【发布时间】:2012-04-06 09:15:28 【问题描述】:

我在 Eclipse 中混合了 C++/Java 项目。我已经设置了一个 build.mk 文件,当编辑器中的所有文件都关闭时,Eclipse 会成功构建项目。当我打开 .h 或 .cpp 文件时,Eclipse 会在其中发现很多未定义的符号。我引用了 3rd 方 API,所有问题似乎都与该 API 中的符号有关。奇怪的是,有些类型被认为是在 Eclipse 中定义的,而有些则被认为是未定义的,即使在某些情况下它们是在同一个 .h 文件中定义的。

我的同事没有遇到任何这些问题,但我们不知道从哪里开始解决这个问题。我们已经确保我们的 Eclipse 包含目录是相同的。有没有办法比较eclipse项目设置?

更新:.cproject 文件和 .project 文件以及 .settings 目录中的文件只知道某些路径不同。但并没有帮助解决我的问题。

【问题讨论】:

你可以diff你同事的.project.cproject对付你的,这不是一件容易的事,但有时它救了我……愚蠢的问题,但是……你试过project/clean你的项目? 是的,我已经尝试过清洁。多次:( 内部解析器遇到类似问题。找不到解决方案。您的同事是否有可能关闭了这些功能(“错误”突出显示)? 【参考方案1】:

我遇到了同样的问题。它可以通过刷新 Eclipse 索引器来解决。

我使用项目上下文菜单并选择了Index->RebuildIndex->Freshen All Files。最后删除了错误消息。

【讨论】:

你是救命稻草 8-) [或者至少是一个理智的救星...] 我正在发疯 b/c 反复清理/重建项目并多次检查偏好没有起到作用...... 这对我来说太烦人了。我实际上可以调试应用程序,但错误表明它没有构建。啊。谢谢你。 这仍然没有为我解决问题。虽然包括 stdint.h stdbool.h 等,但对我来说它们都没有解决。我已验证路径包含在项目属性的列表中,并且构建也成功!只有 Eclipse 的解析器解析失败。 在我将文件移动到另一个目录后删除同名项目并将该项目重新导入我的工作区后为我工作。【参考方案2】:

原来我需要更改启动选项卡上的代码分析设置,但我根本没有看到该选项卡。

【讨论】:

我有一个类似的问题,这并不能解决任何问题【参考方案3】:

我遇到了同样的问题。它发生在我使用的包含文件中

命名空间标准

不在主文件中使用它,反之亦然。请平等地使用 命名空间

【讨论】:

【参考方案4】:

您也可以通过右键单击项目>运行 C/C++ 代码分析来编译和运行源代码。这将解决您的问题。

【讨论】:

这可以帮助您找到所有出现错误但无法解决的地方。【参考方案5】:

我终于想通了。投票最多的答案中提到的刷新 Eclipse 索引器对我不起作用。这是我必须做的:

我去了: 项目 -> 属性 -> C/C++ 常规 -> 路径和符号 -> 包含

这里我有包含目录的路径,但我必须删除目录路径,然后重新添加它,确保选中“添加到所有配置”框。我还选中了“添加到所有语言”框,但我认为没有必要。

在此之后,您可能需要点击 Project -> C/C++ Index -> Rebuild。我不需要,但你可能。此外,显然不是上面路径中的 C/C++,而是 Java 或您正在处理的任何语言。

【讨论】:

以上是关于即使构建成功,Eclipse c++ Type could not be resolved 错误的主要内容,如果未能解决你的问题,请参考以下文章

在 c++ Eclipse CDT 中使用不同的值构建

Eclipse,构建共享库的最佳方式?

eclipse c/c++ CDT 只构建一个文件

C++ Eclipse 生成无效的exe

C++ 类文件未在 Linux OS 上运行的 Eclipse Mars 中构建二进制文件

Eclipse C/C++“权限被拒绝”错误