I managed to deploy the plantuml server to heroku by git clone https://github.com/plantuml/plantuml-server.git and creating a Procfile containing
web: java $JAVA_OPTS -jar target/dependency/jetty-runner.jar --port $PORT target/*.war
git push heroku master
worked and produces sequence diagrams, but for class diagrams, cannot find the Dot executable even though I added a buildpack with dot and set the appropriate environment variable thus:
heroku buildpacks:add --index 2 https://github.com/weibeld/heroku-buildpack-graphviz.git
heroku config:set GRAPHVIZ_DOT=/app/heroku-buildpack-graphviz/usr/bin/dot
The planuml server keeps looking in /opt/local/bin/dot rather than respecting my GRAPHVIZ_DOT environment variable. Why? Interestingly, running
heroku run java -jar ./target/plantuml/WEB-INF/lib/plantuml-1.2018.12.jar -testdot
does indeed report the correct path to dot. Perhaps the jetty-runner is not picking up heroku environment variables? I don't know anything about java servers and am amazed I got this far! Any help on this final step would be appreciated!