Dear Maintainer,
I have discovered a missing dependency for one of PlantUML's features; the ability to generate LaTeX TikzPicture Diagrams from PlantUML depends on XeLaTeX, which is not listed as dependency, recommendation, or suggestion for the PlantUML package.
I initially discovered the error attempting to use the PlantUML LaTeX package; a version of this is included in Debian Stable under the texlive-pictures program, but I was using the upstream version from https://github.com/koppor/plantuml due to an unrelated bug in the Debian version. When rendering the LaTeX document, it kept failing to generate the diagram, leaving a placeholder in the final document. I looked through the output of "latexmk --shell-escape" and discovered the PlantUML command it was using and the error it output:
"Caused by: java.io.IOException: Cannot run program "xelatex" (in directory "/tmp/plantuml-latex-15114716460106052846"): Exec failed, error: 2 (No such file or directory)"
I thus installed XeLaTeX via the texlive-xetex package, and the LaTeX rendering was successful.
The bug can be reproduced with nothing but this version of the PlantUML package (no need for the afforementioned LaTeX package or a LaTeX environment):
1. Create a PlantUML source file; mine was called "db_diagram.txt" and contained the following contents:
@startchen
entity Song{
Name : STRING <<key>>
Run Time : INTEGER
Release Date : DATE
Singer : STRING <<multi>>
}
entity Album{
Name : STRING <<key>>
Release Date : DATE
}
relationship Has {
}
Album -N- Has
Has -N- Song
@endchen
2. Execute PlantUML as follows (with necessary adjustments if you do different file names; this is simply how it occured in my environment):
java -Djava.awt.headless=true -jar "/usr/share/plantuml/plantuml.jar" -charset UTF-8 -pipe -tlatex:nopreamble < "db_diagram.txt" > "plantuml-227EB927E17C89053D29C52E29CF6502-converted-to.tex"
In an environment without texlive-xetex or another XeLaTex installation, this fails to generate a TeX file and instead returns Java errors related to xelatex being being missing.
This could be solved by adding texlive-xetex as a dependency, or at least a recommendation and sufficient documentation.