Hak*_*kim 3 python python-sphinx
我正在使用Sphinx
版本1.4.5
.
我的项目结构如下:
+ src > main.py
+ docs (generated with sphinx-quickstart)
src
即使在添加文件夹路径后docs/conf.py
:
sys.path.insert(0, os.path.abspath('../src'))
Run Code Online (Sandbox Code Playgroud)
并使用以下命令生成src/main.py
(即docs/src.rst
和docs/modules.rst
)的第一个文件:
$ sphinx-apidoc -fo docs src
Run Code Online (Sandbox Code Playgroud)
当我尝试使用以下内容构建html
网页时:
$ make clean
$ make html
Run Code Online (Sandbox Code Playgroud)
它找不到模块src
和src/main.py
:
WARNING: autodoc: failed to import module u'src.main'; the following exception was raised
小智 6
我喜欢使用以下代码来conf.py
准确了解当前目录是什么以及目标模块在哪里(以获取文档):
current_dir = os.path.dirname(__file__)\ntarget_dir = os.path.abspath(os.path.join(current_dir, "../../src"))\nsys.path.insert(0, target_dir)\n\nprint(target_dir)\n
Run Code Online (Sandbox Code Playgroud)\n\n在本例中,我希望为我的 src 创建文档,请参阅树以了解上下文:
\n\nmain\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 docs\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 build\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 make.bat\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 Makefile\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 source\n\xe2\x94\x82 \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 conf.py\n\xe2\x94\x82 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 index.rst\n\xe2\x94\x82 \n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 src\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 __init__.py\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 target_module\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 requirements.txt\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 setup.py\n
Run Code Online (Sandbox Code Playgroud)\n\n接下来,从您的终端:
\n\n[user@localhost docs]$ sphinx-apidoc -f -o source/ ../src/target_module\n[user@localhost docs]$ make html\n
Run Code Online (Sandbox Code Playgroud)\n
尝试为您的路径插入执行此操作:
sys.path.insert(0, os.path.abspath('../'))
Run Code Online (Sandbox Code Playgroud)
还要为您的目录考虑一个比src
.
归档时间: |
|
查看次数: |
9748 次 |
最近记录: |