0

背景

我的代码具有以下结构:

.
└── my_package
    ├── __init__.py
    ├── classif
    │   ├── __init__.py
    │   ├── inference.py
    │   └── models.py
    ├── datasets
    │   ├── __init__.py
    │   └── datasets.py
    └── matching
        ├── __init__.py
        ├── elastic.py
        └── search.py

sphinx-quickstart(with autodoc) 之后,我运行sphinx-apidoc如下:

sphinx-apidoc -f -o source my_package -e -M

我现在有以下文件:

.
├── Makefile
├── build
├── my_package
│   ├── __init__.py
│   ├── __pycache__
│   ├── classif
│   ├── datasets
│   └── matching
└── source
    ├── _static
    ├── _templates
    ├── conf.py
    ├── index.rst
    ├── modules.rst
    ├── my_package.classif.inference.rst
    ├── my_package.classif.models.rst
    ├── my_package.classif.rst
    ├── my_package.datasets.datasets.rst
    ├── my_package.datasets.rst
    ├── my_package.matching.elastic.rst
    ├── my_package.matching.rst
    ├── my_package.matching.search.rst
    └── my_package.rst

我还修改conf.py添加:

import os
import sys
sys.path.insert(0, os.path.abspath('.'))
sys.path.insert(0, os.path.abspath('..'))

并添加modulesindex.rst

.. toctree::
   :maxdepth: 2
   :caption: Contents:

   modules

# [more lines]

现在问题来了

运行后make clean ; make html我收到警告:

/path/to/my_package.classif.rst: WARNING: document isn't included in any toctree
/path/to/my_package.datasets.rst: WARNING: document isn't included in any toctree
/path/to/my_package.matching.rst: WARNING: document isn't included in any toctree

这是有道理的,因为sphinx-apidoc 没有在my_package.rst. 我该如何解决这个问题?

4

1 回答 1

0

这个问题实际上是已知的-> https://github.com/sphinx-doc/sphinx/issues/4446

升级到狮身人面像1.7.6解决了它。

于 2018-07-17T09:38:17.640 回答