首页 > 解决方案 > 在 Sphinx restructuredText 的根目录之外找不到相对路径“../..”:“未知文档错误”

问题描述

即使我检查了相对路径一百万次(从说明引用的文档位置测量它是正确的),在将文档推送到AWS CodeBuild时仍然会引发错误:

Warning, treated as error:
/codebuild/output/src192164467/src/docs/source/proj-repository-contents.rst:100:
unknown document: ../../src/lambda_functions/input/README.rst

我引用其他.rst文档的部分如下所示:

* input

    Supports the input ingestion pipelines.
    More details can be found in the :doc:`input Lambda functions <../../src/lambda_functions/input/README.rst>` - README.

如何确保通过例如找到活动父目录之外的另一个文档

:doc:`some name <../../folder/filename.rst>`

?


编辑:更多无效的方法

正如这里所建议的,可以将绝对路径包含到conf.py- 文件中,如下所示:

SOURCE_PATH = os.path.join(LOCAL_PATH, '..', '..', 'src')
sys.path.insert(0, os.path.abspath(SOURCE_PATH))

接下来,我尝试使用以下方法引用其中一个自述文件,但由于相同的“未知文档错误”而全部失败:

出于好奇,我尝试了项目的一般根目录,但它也失败了:

<src/lambda_functions/input/README.rst>

作为最后的手段,我尝试使用 README 文件所在文件夹的直接路径:

LAMBDA_INPUT_PATH = os.path.join(LOCAL_PATH, '..', '..', 'src',
                                 'lambda_functions', 'input')
sys.path.insert(0, os.path.abspath(LAMBDA_INPUT_PATH))

有了这个,我使用 直接引用了文件名<README.rst>,即使这样也失败了。

标签: pythonpython-sphinxrelative-pathrestructuredtext

解决方案


推荐阅读