【问题标题】:How do I deal with conflicting names when building python docs with doxygen使用 doxygen 构建 python 文档时如何处理冲突的名称
【发布时间】: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 的链接,它们都指向同一个文件。

【问题讨论】:

    标签: python windows doxygen


    【解决方案1】:

    您可以尝试显式声明一个带有完整命名空间的类 http://www.doxygen.nl/manual/commands.html#cmdclass

    【讨论】:

      猜你喜欢
      • 2015-02-16
      • 2011-06-09
      • 1970-01-01
      • 1970-01-01
      • 2020-08-16
      • 2012-08-23
      • 1970-01-01
      • 1970-01-01
      • 2021-08-14
      相关资源
      最近更新 更多