当前位置: 首页 > 知识库问答 >
问题:

Sphinx、Kivy和autodoc:创建文档的警告和问题

隆璞
2023-03-14

我想在Sphinx中创建代码文档。我安装了所有东西,做了一些简单的试验,效果很好。(我运行sphinx quickstart,编辑conf.py以包含模块的路径,使用教程了解sphinx的工作原理等)

然而,我的代码导入了许多Kivy库。当我想在导入Kivy的模块上创建文档时,它失败了。

例如,如果我有这样的main.py:

#!/usr/bin/python
# -*- coding: utf-8 -*-

from kivy.app import App

def test_app(a,b):
    """ Test documentation """
    print a + b

if __name__ == '__main__':
    test_app(1,2)

那么,如果我跑

澄清

我有以下wanring(并且没有编辑文档..):

警告:/home/math/drphytoscan/source/autodoc。rst:4:(警告/2)autodoc:无法导入模块u'src。主要';引发了以下异常:Traceback(最近一次调用):文件“/usr/local/lib/python2.7/dist packages/sphinx/ext/autodoc.py”,第657行,导入对象导入(self.modname)文件“/home/math/drphytoscan/source/src/main.py”,第14行,来自kivy。应用程序导入应用程序导入错误:没有名为app的模块

注意:如果我删除该行:

from kivy.app import App

它起作用了。这表明它来自Kivy lib导入。

PS:我在Debian Jessie上有Python 2.7.9,Kivy 1.9.1和Sphinx 1.6.3

共有1个答案

呼延德华
2023-03-14

从autodoc文档顶部的注释中:

为了让Sphinx(实际上是执行Sphinx的Python解释器)找到您的模块,它必须是可导入的。这意味着模块或包必须位于sys上的一个目录中。路径–调整您的系统。配置文件中相应的路径。

 类似资料:
  • 问题内容: 我正在尝试使用Sphinx来记录我的Python类。我这样做是使用autodoc: 虽然它可以正确地获取我的方法的文档字符串,但这些字符串是经过修饰的: 与存在 的原型不正确,例如。 我怎样才能解决这个问题?我的印象是使用可以解决这种问题。 问题答案: 扩展我的评论: 您是否尝试过使用decorator包并将@decorator放在checkStale上?使用带有修饰功能的epydoc

  • 问题内容: 我正在尝试使用Sphinx在Python中记录5,000多个项目。它有大约7个基本模块。据我所知,为了使用自动文档,我需要为项目中的每个文件编写如下代码: 这太繁琐了,因为我有很多文件。如果我只想指定要记录的“ mods”包,那会容易得多。然后,Sphinx可以递归地浏览包并为每个子模块创建一个页面。 有这样的功能吗?如果没有,我可以编写一个脚本来制作所有.rst文件,但这将花费很多时

  • 问题内容: 我在包含文件的文件上运行Sphinx,但似乎没有任何效果。 详细信息如下:我有一个Python项目,其中包含一个包含类的文件。我还有一个子目录,其中有一个文件(由生成): 我使用项目目录作为当前工作目录运行sphinx 。 为了确保找到Python文件,我在中包括了以下内容: 它运行没有错误,但是当我打开生成的HTML文件时,它仅显示“代理模块”,并且所有内容均为空白。为什么不显示班级

  • Sphinx 是一个工具,她能够轻易地创建智慧和优雅的文档,她是出自 Georg Brandl 之手,在BSD许可证下授权。

  • 运行Websphere App server V8.5 Liberty配置文件。我找不到任何可以解决这些警告的帮助。我在Eclipse上。 [警告]CWWKC0022W:[com.ibm.ws.anno.info.internal.ClassInfoCache@957735840]对类[java.lang.Object]的扫描导致异常。消息是:[Class[java.lang.object]fro

  • 如果提到经常被开发者忽略的特性,那应该就是动态输出错误和提醒的功能了。事实上,Sass 自带三条自定义指令从标准输出系统(CLI,编译程序……)中打印内容: @debug; @warn; @error. 先让我们把 @debug 放一边,毕竟它主要是用作调试 SassScript,而这并不是我们的重点。然后我们就剩下了相互间没有明显差异的 @warn 和 @error,唯一的不同是其中一个可以中断

  • 问题 你需要创建或解压常见格式的归档文件(比如.tar, .tgz或.zip) 解决方案 shutil 模块拥有两个函数—— make_archive() 和 unpack_archive() 可派上用场。 例如: >>> import shutil >>> shutil.unpack_archive('Python-3.3.0.tgz') >>> shutil.make_archive('py

  • Sphinx简单来说,是一个文档生成工具,用于把reStructuredText 格式的源文件生成诸如HTML, PDF, LaTex一类的格式。编辑者无须亲自处理文本的格式, 程序会自动根据源文件里的设置产生格式, 以及自动生成章节链接等工作。 和 DocBook一样,Sphinx可以看做是一个把文本格式处理和文字编辑分开的工具。举个例子来说吧,大家一定都曾有过上学时用Word痛苦地修改论文 的