【发布时间】:2011-07-02 16:38:59
【问题描述】:
我在使用 Python 的 Doxygen for Windows 时遇到问题,其中具有相同 failename 的输入文件会导致与输出文件发生冲突。这似乎是 doxygen 中的一个错误 - 有没有办法解决这个问题?
背景
我们使用 Doxygen 为我们的 API 构建文档。我们的项目绝大多数是用 python 编写的,我们的客户关心的唯一组件是 python。由于历史上的意外,我们的班级经常有不幸的命名约定。
例如,我们有一个类的完全限定名称是:
tools.b.foo.Foo
tools.b.bar.Bar
后来这个类被重新实现并放入一个新模块中:
tools.c.foo.Foo_improved
tools.c.bar.Bar_improved
当我们想要构建我们的工具 API 文档时,我们有一个过程将 tools.* 检出到构建服务器上的目录中,然后我们使用相当标准的配置文件调用 doxygen。
我们希望输出中应该有四个 HTML 文件,两个用于 foo,两个用于 bar。然而我们得到的只是两个文件。两组 sripts 都被解析,但是由于模块名称相同,旧版本的文档最终会覆盖为新版本生成的文档。因此,在每个 python 模块名称重复的情况下(但在不同的子包中),我们只会为每个文件名获取一个 doc 文件。
仅供参考,我们在 Windows XP 32bit 和 Python 2.4.4 上使用 doxygen 1.7.1
配置文件在这里: http://pastebin.me/002f3ec3145f4e1896a9cf79e7179493
更新 1:在生成的文档索引中,我可以看到所有四个文件的条目,但是如果我点击 Foo 和 Foo_improved 的链接,它们都指向同一个文件。
【问题讨论】: