所以我有一系列用 doxygen 记录的项目(它必须是 doxygen)。我为每个项目分别运行 doxygen 并使用“链接到外部文档”http://www.doxygen.nl/manual/external.html以便连接文档。例如,我在另一个使用它的项目中导入库项目的标记文件。这样,在其他项目文档中使用库类时,会自动生成指向库类的链接。
现在对于这个问题,假设我有一个库 libA,它在另一个库 libB 中使用。 libA 和 libB 各有一个主页。在 libB 的文档中,我导入了 libA 的标记文件。到目前为止一切顺利,但现在我有第三个项目,我们称之为 app,它同时使用 libA 和 libB。我导入标签文件和链接都适用于两者,但它也提示 libA 主页 anchor 是重复的。我意识到它们是,因为它们是通过 libB 和作为 libA 直接导入的,但是如果我不在 app 中导入 libA 标记文件,则不会创建 libA 类的链接。
现在,如果我只导入两个标签并忽略警告,结果文档似乎没问题,但警告会使日志文件困惑,因此我可能会错过其他一些警告,例如我忘记记录方法或其他内容。
那么,任何想法如何解决这个问题?这是doxygen中的错误吗?我可以取消这个特定的警告吗?有没有更好的方法来用 doxygen 记录这样的项目集合?
最佳答案
我不是专家,但我认为您可以通过为 libB 运行两次 doxygen 来解决这个问题。第一次设置GENERATE_TAGFILE
但不是 TAGFILES
,因此生成的标记文件仅用于 libB。然后修改 Doxyfile 以正常通过 TAGFILES
链接 libA 标记文件,但禁用 GENERATE_TAGFILE
这样您就不会覆盖 libB 标记文件的干净版本。
如果它表现得像它应该的那样,你会得到一个只用于 libB 的标记文件,没有对 libA 的引用,你可以在应用程序上运行 doxygen 时使用它,但 libB 的实际 html 文档将正确链接到 libA 的文档。
关于使用标签文件时 Doxygen 重复 anchor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31165918/