updated graphviz dot on mac via brew to version 2.42.2 but plantuml server keeps looking for 2.40.1

0 votes
asked Oct 25 in Question / help by tcab (140 points)

My local plantuml server was working fine till I upgraded graphviz on my mac using "brew upgrade" to the latest graphviz 2.42.2.

Now when I run the plantuml server with 

mvn jetty:run 

the server runs, but when I ask it to render a class diagram, I get the error 

Dot Executable: /usr/local/Cellar/graphviz/2.40.1/bin/dot
File does not exist
Cannot find Graphviz

Yet there is only one dot on my mac and it is in my path ok and is the 2.42 not 2.40

/usr/local/bin/dot -> ../Cellar/graphviz/2.42.2/bin/dot

and is the default dot

$ dot -V
dot - graphviz version 2.43.0 (0)
$ /usr/local/Cellar/graphviz/2.42.2/bin/dot -V
dot - graphviz version 2.43.0 (0)

Why is plantUML server insisting on using an older graphviz/2.40.1/bin/dot? I tried 

  • deleting plantuml server's target directory
    • rm -rf target
      mvn jetty:run
  • reinstalling plantuml server with 
  • deleting all of mavens cache 
    • rm -rf ~/.m2/repository/
      mvn dependency:purge-local-repository

yet the error persistes. I'm not sure what to try next? I haven't played with GRAPHVIZ_DOT because I don't feel I should be fiddling with environment variables given my dot situation seems crystal clear, and the latest plantuml code should be respecting and finding /usr/local/bin/dot OK.

It hard to use the diagnostics recommended e.g. java -jar plantuml.jar -testdot because there is no plantuml.jar in the directory created via plantuml-server.git - am I missing something?

I'm a heavy user of PlantUML so am keen to get this resolved. I did a brew upgrade and now I'm in a broken situation!

1 Answer

+1 vote
answered Oct 25 by plantuml (207,620 points)

If you do have this message:

Dot Executable: /usr/local/Cellar/graphviz/2.40.1/bin/dot

It probably means that GRAPHVIZ_DOT environment variable has been set to /usr/local/Cellar/graphviz/2.40.1/bin/dot
If you did not set the variable by yourself, maybe some scripts did ?

Could you double-check this ?

commented Oct 25 by tcab (140 points)

Aha - thanks, by typing

env

I discovered that I had

GRAPHVIZ_DOT=/usr/local/Cellar/graphviz/2.40.1/bin/dot

set via my ~/.bash_profile for some reason, which is the older, nonexistent version of graphviz/dot.  Commenting out that line and opening a new terminal solved the problem and now plantuml server is rendering perfectly. Thanks!

...