14

我有一个由许多源文件、头文件和其他文件组成的 makefile 项目,我正在尝试将其转换为 Eclipse“本机”项目。索引器报告目录中存在但从构建中排除的文件的错误和警告的问题。结果,我的目录树的大部分都标有红色x符号。

如何使索引器忽略特定文件和/或目录?

注意:当将目录定义为“派生”时,它将被排除在进一步的搜索之外,但不幸的是,它不是来自代码分析。使用项目资源过滤器也不能解决问题。

4

3 回答 3

16

单个文件很棘手,但是应该可以使用文件夹。Right click on the project -> Properties -> C/C++ General -> Paths and Symbols

查看“源位置”选项卡:

  • (a)完全删除源文件夹或
  • (b)定义一个排除过滤器(您还可以在其中添加文件夹、过滤器以及在一定程度上还可以添加文件等)
  • (c)通过左键单击突出显示一个或多个文件或文件夹。然后,右键单击所选文件之一,然后选择Resource Configurations -> Exclude from build.... 它将排除所有选定的文件或文件夹。
  • (d)还请查看File Types(在 C/C++ 常规中)并单击“路径和符号”的其他选项卡,看看是否可以删除某些内容......
  • (e)正如您可能已经看到的,还有一个索引器(Right click on the project -> Properties -> Indexer可以配置

现在我希望 DS-5 的人没有停用所有这些选项……

更新:当然这些选项在 CDT 中也可用(至少其中一些)。我相应地改变了我的描述......

于 2015-07-10T07:58:37.147 回答
14

注意 - 这是部分答案

与 Eclipse 中的许多功能一样,这是隐藏在无休止的配置对话框中的另一个选项,并且具有与常识形成鲜明对比的默认设置......

为了排除从构建中排除的文件的索引,取消选中:

Window-> Preferences-> C/C++-> Indexer->Index source files not included in the build

我还没有找到排除构建中包含的文件的方法。同样,我找不到如何排除整个目录,但如果一个目录中的所有源都从构建中排除,那么在未选中此设置的情况下,它也将从索引中排除。

于 2015-07-08T19:24:58.913 回答
1

通过使用特定的 Indexer 构建配置,可以忽略索引中的特定文件/目录:

  1. 准备一个新的(特定于索引器的)构建配置。
  2. 使用源位置排除过滤器从该配置中排除不需要的源文件。
  3. 让 Indexer 使用这个特定的构建配置。

在此处查看分步详细信息:https ://stackoverflow.com/a/69469698/1744707

于 2021-10-06T17:06:58.577 回答