/home/docs/checkouts/xxx/user_builds/sdofjasif/checkouts/latest/doc/source/contents.rst not found

今兒用了一下 ReadTheDocs,真tm好用,就是遇到一個小bug,中文資料少之又少…查完資料解決後,將解決途徑放到這裏.

報錯全文:

python /home/docs/checkouts/readthedocs.org/user_builds/sdofjasif/envs/latest/bin/sphinx-build -T -E -b readthedocs -d _build/doctrees-readthedocs -D language=zh_CN . _build/html
Running Sphinx v1.8.5
loading translations [zh_CN]... done
making output directory...
building [mo]: targets for 0 po files that are out of date
building [readthedocs]: targets for 2 source files that are out of date
updating environment: 2 added, 0 changed, 0 removed
reading sources... [ 50%] hello
reading sources... [100%] index

/home/docs/checkouts/readthedocs.org/user_builds/sdofjasif/envs/latest/lib/python3.7/site-packages/recommonmark/parser.py:65: UserWarning: Container node skipped: type=document
  warn("Container node skipped: type={0}".format(mdnode.t))

Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/sdofjasif/envs/latest/lib/python3.7/site-packages/sphinx/cmd/build.py", line 304, in build_main
    app.build(args.force_all, filenames)
  File "/home/docs/checkouts/readthedocs.org/user_builds/sdofjasif/envs/latest/lib/python3.7/site-packages/sphinx/application.py", line 341, in build
    self.builder.build_update()
  File "/home/docs/checkouts/readthedocs.org/user_builds/sdofjasif/envs/latest/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 347, in build_update
    len(to_build))
  File "/home/docs/checkouts/readthedocs.org/user_builds/sdofjasif/envs/latest/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 360, in build
    updated_docnames = set(self.read())
  File "/home/docs/checkouts/readthedocs.org/user_builds/sdofjasif/envs/latest/lib/python3.7/site-packages/sphinx/builders/__init__.py", line 472, in read
    self.env.doc2path(self.config.master_doc))
sphinx.errors.SphinxError: master file /home/docs/checkouts/readthedocs.org/user_builds/sdofjasif/checkouts/latest/doc/source/contents.rst not found

Sphinx error:
master file /home/docs/checkouts/readthedocs.org/user_builds/sdofjasif/checkouts/latest/doc/source/contents.rst not found 

解決途徑:

If you have your own conf.py file, it overrides Read the Doc’s default conf.py. By default, Sphinx expects the master doc to be contents. Read the Docs will set master doc to index instead (or whatever it is you have specified in your settings). Try adding this to your conf.py: master_doc = 'index'

在你的conf.py文件中加上master_doc = 'index'這樣一句話即可

原因是自定義的 conf.py 文件,其覆蓋了原來的conf.py 文件.
默認情況下,Sphinx希望 master doc爲內容. Read the DocsRead\ the\ Docs 將設置master doc改爲 index(或您在設置中指定的任何內容)。

參考自:
https://stackoverflow.com/questions/56336234/build-fail-sphinx-error-contents-rst-not-found
https://github.com/readthedocs/readthedocs.org/issues/2569

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章