0

Okay so this is quite an exotic question and I am unsure whether it really fits on this page. But as it involves LaTeX I'll post it here.

I have written a Java program that I am calling from inside LaTeX via \immedeiate\write18{java -jar <myJar>}. This works great except for this edge case:

  1. I am in a directory that contains an umlaut in it's name (e.g. ä)
  2. I am using lualatex to compile the document
  3. (I am using Linux)

If all of these conditions are met the call fails with the message Error: LinkageError occurred while loading main class <name> java.lang.ExceptionInInitializerError: null.

I double-checked that I can call the jar from that directory via terminal and the call works when using e.g. pdflatex to compile the document (as soon as the umlaut is removed it also works with lualatex).

I also verified that I can write a lua script that calls the jar via os.execute(...) which is what lualatex uses via it's shellesc package to execute \write18 commands. However as soon as I do the same command from inside LaTeX (via \directlua) I get the error message stated above.
I also checked with print(_VERSION) that lualatex uses the same lua version I tested my external script in.

Does anybody know what the problem here might be? Are there some further things lualatex does to its lua-environment that could be the problem?
Any thought on this is welcome.

EDIT: A friend of mine does not have this issue on a windows machine (though I am not a hundred percent sure he is actually using lualatex as well)

EDIT2: Here's an MWE:

\documentclass{article}

\begin{document}
    Some content so TeX won't complain
    \directlua{os.execute("java -jar <PathToArbitraryJarFile>")}
\end{document}

Put above code in a folder called Testär (or something else with an umlaut) and compile the document with lualatex

  • 1
    Could you please show a MWE to reproduce the issue? – TeXnician Dec 14 '18 at 17:04
  • @TeXnician done – Raven Dec 14 '18 at 17:42
  • Did you try it without umlaut in the directory name? – Kurt Dec 15 '18 at 4:30
  • @Kurt yes without the umlaut it is working just fine – Raven Dec 15 '18 at 7:34
  • That is the solution: simply do not use umlauts and other special characters in the path ... – Kurt Dec 15 '18 at 7:38

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.