我想在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)
然后,如果我跑
make clean&&制作HTML
我有以下想法(并且没有编辑过的文档..):
警告:/home/math/drphytoscan/source/autodoc.rst:4:(警告/ 2)autodoc:无法导入模块u' src.main&#39 ;;以下例外 引发:Traceback(最近一次调用最后一次):文件 " /usr/local/lib/python2.7/dist-packages/sphinx/ext/autodoc.py" ;, line 657,在import_object中 导入(self.modname)文件" /home/math/drphytoscan/source/src/main.py",第14行,来自 kivy.app import App ImportError:没有名为app的模块
注意:如果我删除该行:
from kivy.app import App
它有效。这表明它来自kivy lib import。
你知道这是什么问题吗?你能帮帮我吗?
提前谢谢!
微米。
PS:我在Debian Jessie上有python 2.7.9,kivy 1.9.1和Sphinx 1.6.3
答案 0 :(得分:0)
对于Sphinx(实际上是执行Sphinx的Python解释器)来查找模块,它必须是可导入的。这意味着模块或软件包必须位于sys.path上的一个目录中 - 相应地调整配置文件中的sys.path。