__init__.py文件上的doxygen chokes

时间:2011-07-11 18:49:55

标签: python doxygen

我正在尝试使用Doxygen记录python模块 - 但似乎__init__.py文件的存在导致了问题

目前__init__.py文件为空(我已尝试在其中添加评论,如

## Nothing here

但没有成功)。在Doxygen端没有解析模块命名空间 - 如果以下是我的文件:

## @package stuff
#  @author me
#  Description
#
#  Some more description

## A class that does whatever
class whatever:
    ## A method that does stuff
    def dostuff(self):
        pass

它只会选择“描述”和“更多描述”字符串。即使文件中的任何类不包含__init__方法(认为可能存在命名冲突),doxygen也不会接收模块中的任何内容。

我尝试在Doxyfile中使用各种'EXCLUDE'指令,但没有任何效果。

之前是否有人遇到此问题?在删除__init__.py文件时,一切正常 - 但这不是最佳解决方案。

1 个答案:

答案 0 :(得分:2)

我遇到了完全相同的问题,我发现问题在于包的命名。给出的名称必须完全合格。否则,您将为新包创建文档,在本例中名称为stuff,但您的类将位于未记录的包中,除非您将EXTRACT_ALL设置为yes,否则将隐藏该包。

因此,假设您的文件名为stuff.py并且位于名为mypackage的目录中,并且__init__.pystuff.py应该如下所示:

## @package mypackage.stuff
#  Description
#
#  Some more description
#  @author me

## A class that does whatever
class whatever:
    ## A method that does stuff
    def dostuff(self):
        pass

## A function that does whatever
def whatever:
    pass