Search code examples
python-sphinxread-the-docsplantuml

Using Plantuml when publishing on RTD server


I just managed to display my documentation on the RTD server. (https://uracoli-rsensor.readthedocs.io/).

In the Sphinx-RST file I have a ".. uml::" statement, which renders nicely when I build the documentation locally.

In conf.py I have the statement:

plantuml = 'java -jar plantuml.jar'

It references to a local copy of plantuml.jar which is not commited to my repo.

How can I write the statement plantuml = .... correctly for readthedocs?


Solution

  • The initial solution was found here: https://github.com/readthedocs/readthedocs.org/issues/3885

    In conf.py add this lines:

    if os.environ.get("READTHEDOCS") != None:
        plantuml = 'java -Djava.awt.headless=true -jar /usr/share/plantuml/plantuml.jar'
    else:
        plantuml = 'java -jar plantuml.jar'
    

    Also it is documented here:

    https://sphinxcontrib-needs.readthedocs.io/en/latest/installation.html#install-plantuml