23

I installed the PlantUML extension (by jebbs) in Visual Studio Code for Windows and everything is working perfectly for sequence diagrams.

However when I try to render a class diagram I get the message:

Dot Executable: \opt\local\bin\dot
File does not exist
Cannot find Graphviz

Screencap of full error message:

Dot Executable does not exist error

When I try the example @startuml testdot @enduml code specified I get the following error:

The environment variable GRAPHVIZ_DOT has been set to /opt/local/bin/dot
Dot executable is \opt\local\bin\dot

Screencap of full error message:

GRAPHVIZ_DOT has been set error

Any ideas where this has been specified such that I can override it (assuming this is what the problem is)? It hasn't been added to the system or user environment variables that I can see.

Claire Furney
  • 2,115
  • 3
  • 24
  • 36

3 Answers3

34

The GRAPHVIZ_DOT environment variable is specified in File > Preferences > Settings > Plantuml: Command Args. Click on the link to "Edit in settings.json".

Settings dialog

settings.json

Additionally the VSCode PlantUML extension doesn't appear to include the graphviz "dot.exe" executable, so this needs to be downloaded and installed (e.g. via chocolatey OR download and unzip from https://graphviz.gitlab.io/_pages/Download/Download_windows.html)

Following this, update the path and save.

{
    "plantuml.commandArgs": [
        "-DGRAPHVIZ_DOT=D:\\Tools\\graphviz-2.38\\release\\bin\\dot.exe",
    ]
}

Also see https://github.com/qjebbs/vscode-plantuml/issues/94

Claire Furney
  • 2,115
  • 3
  • 24
  • 36
1

This is how I managed to fix the graphviz dot: null issue:

From VSC: Goto EXTENSIONS: MARKETPLACE ( you can find the option on the left side)

enter image description here

Select the graphviz extension that you have installed e.g. @ext:tintinweb.graphviz-interactive-preview

Click the Settings

Graphviz-interactive-preview: Render Lock  (Uncheck this one)
Graphviz-interactive-preview: Render Lock Additional Timeout: -1

If VSC is on Windows, then create a variable pointing to the location where dot.exe of graphviz has been installed.

enter image description here

Deb
  • 587
  • 4
  • 12
0

The prerequisite of PlantUML is Java and Graphviz (https://plantuml.com/starting)

You need these things to run PlantUML: Java Graphviz (optional if you only need sequence diagrams and activity (beta) diagrams)

, in Windows machine, we can download and extract the Graphviz and then put it in the user path.

Kerisnarendra
  • 877
  • 9
  • 14