警告:toctree 包含对 Sphinx 不存在文档错误的引用
WARNING: toctree contains reference to nonexisting document error with Sphinx
我几天前开始使用 Sphinx 来记录一个 python 包,我得到了一个似乎是常见的错误,但我找不到解决方案。
我使用 sphinx-quickstart 设置了所有内容。我使用 "doc/" 作为文档根位置。包含我的包的文件夹设置为:
myfolder/
doc/
mypackage/
__init__.py
moprob.py
...
快速启动后,我将conf.py中的路径编辑为:
import os
import sys
sys.path.insert(0, os.path.abspath('..'))
然后我将我的包中的一个脚本添加到 index.rst 以查看 sphinx 的工作原理。
.. toctree::
:maxdepth: 2
:caption: Contents:
mypackage/moprob
我得到的错误代码:
.../index.rst:9: WARNING: toctree contains reference to nonexisting document u'mypackage/moprob'
我尝试过的解决方案:
将 sphinx.ext.napoleon 添加到扩展列表中,因为我所有的文档字符串都是使用 numpy 格式编写的。错误并没有消失。我还将 napoleon 扩展名放在 autodoc 之后,因为其中一个帮助页面建议这样做。
扩展 = ['sphinx.ext.autodoc',
'sphinx.ext.napoleon']
将 numpydoc_show_class_members = False 添加到 conf.py。我把它直接放在扩展名下面。这也没有帮助。
几个不同的文件夹位置配置。我还尝试将根位置设置为 myfolder,将源设置为 mypackage,将构建设置为 doc。 None 有效。
你有什么想法可以帮助我吗?
toctree 指令包含对 reStructuredText 文档的引用,而不是 Python 脚本或模块。 Sphinx 希望有一个 mypackage/moprob.rst 文件(在 doc 文件夹中),但没有。因此错误。
要快速获得一些有意义的输出,请创建 mypackage/moprob.rst 文件。在其中添加一个标题和一个 automodule 指令:
moprob module
=============
.. automodule:: mypackage.moprob
:members:
然后 运行 再 sphinx-build。
我几天前开始使用 Sphinx 来记录一个 python 包,我得到了一个似乎是常见的错误,但我找不到解决方案。
我使用 sphinx-quickstart 设置了所有内容。我使用 "doc/" 作为文档根位置。包含我的包的文件夹设置为:
myfolder/
doc/
mypackage/
__init__.py
moprob.py
...
快速启动后,我将conf.py中的路径编辑为:
import os
import sys
sys.path.insert(0, os.path.abspath('..'))
然后我将我的包中的一个脚本添加到 index.rst 以查看 sphinx 的工作原理。
.. toctree::
:maxdepth: 2
:caption: Contents:
mypackage/moprob
我得到的错误代码:
.../index.rst:9: WARNING: toctree contains reference to nonexisting document u'mypackage/moprob'
我尝试过的解决方案:
将 sphinx.ext.napoleon 添加到扩展列表中,因为我所有的文档字符串都是使用 numpy 格式编写的。错误并没有消失。我还将 napoleon 扩展名放在 autodoc 之后,因为其中一个帮助页面建议这样做。
扩展 = ['sphinx.ext.autodoc', 'sphinx.ext.napoleon']
将 numpydoc_show_class_members = False 添加到 conf.py。我把它直接放在扩展名下面。这也没有帮助。
几个不同的文件夹位置配置。我还尝试将根位置设置为 myfolder,将源设置为 mypackage,将构建设置为 doc。 None 有效。
你有什么想法可以帮助我吗?
toctree 指令包含对 reStructuredText 文档的引用,而不是 Python 脚本或模块。 Sphinx 希望有一个 mypackage/moprob.rst 文件(在 doc 文件夹中),但没有。因此错误。
要快速获得一些有意义的输出,请创建 mypackage/moprob.rst 文件。在其中添加一个标题和一个 automodule 指令:
moprob module
=============
.. automodule:: mypackage.moprob
:members:
然后 运行 再 sphinx-build。