我正在使用 Doxygen 生成开发人员文档。它正确解析所有文件,但输出在成员函数列表和类图中生成重复的条目。
有什么想法吗?
我遇到了这个问题,发现由于
INPUT
处于打开状态,我不小心在 RECURSIVE
行中指定了构建文件夹,例如,
文件结构示例:
./
MyLibrarySources/
Libs/
build/
Doxyfile:
INPUT = ./ MyLibrarySources/ ...
RECURSIVE = YES
这导致 Doxygen 从两个不同的位置解析标头:一次来自
MyLibrarySources/
,一次来自 build/
,产生重复的成员和其他奇怪的结果。
简单的解决方案是将构建目录添加到
EXCLUDE
行,例如:
EXCLUDE = "build"
这使得 Doxygen 无法解析两个不同位置的相同头文件。是的,源内构建目录通常是一个坏主意,请将它们放在其他地方。就我而言,默认情况下,不是从 IDE 发出的命令行构建会转到那里。
编辑注释:我错误地认为由于
INPUT
行中的双重规范,源文件被解析了两次。事实并非如此。 Doxygen 对此很聪明,不会两次解析同一个物理文件👍.
我也有重复的条目,这不是关于读取文件两次或双重规格。
我刚刚阅读了
.h
和 .cpp
文件。
现在
Doxyfile
看起来像这样:
FILE_PATTERNS = *.h
# To avoid duplicate reading of function prototypes
# don't read cpp-files.
# FILE_PATTERNS = *.cpp \
# *.h