Nun kann man im Start-Script /usr/bin/jabref sehr schön sehen, dass Version 8 beim Aufruf von Java in Zeile 7 angefordert wird. Das zugrundeliegenden java-wrapper-Scripte /usr/lib/java-wrappers/java-wrappers.sh scheint dies aber zu ignorieren und trotzdem Java 9 anzubieten. Das schlägt dann fehl. JabRef läuft nicht mit Java 9. Bei mir ist OpenJDK 8 und 9 als JRE (nicht headless!) installiert.
In allen beiden Baustellen (JabRef, java-wrapers) sind offene Bug-Tickets, welche diese Situation auf die ein oder andere Weise addressieren. Genau durchblicken tue ich da allerdings nicht.
Nun versuche ich die Situation besser zu verstehen und mögliche Workarounds zu finden.
- Ist das ein Fehler in den java-wrapper Script, dass er trotz explizieter Anforderung von Java 8 die Version 9 anbietet? Oder steht dahinter eine sinnvolle Debian-Entscheidung?
- In welcher Datei finde ich die main() von JabRef? Wie kann ich JabRef explizit mit Java 8 aufrufen? Bin mit Java-environment nicht vertraut und etwas Python-verwöhnt. java8 auf der Bash geht ja leider nicht. Und was der String net.sf.jabref.JabRefMain zu bedeutetn hat, ist mir auch nicht klar. Die Datei JabRefMain existiert jedenfalls nicht.