JabRef in unstable: Umgang mit Java-Versions-HickHack

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
buhtz
Beiträge: 1105
Registriert: 04.12.2015 17:54:49
Kontaktdaten:

JabRef in unstable: Umgang mit Java-Versions-HickHack

Beitrag von buhtz » 18.03.2018 13:41:25

DebianJabRef in unstable ist 3.8.2 und verlangt Java 8. Die frischeste dev-Version von upstream ist 4.1 und verlangt ebenfalls noch Java 8. Bei upstream wird an dem Problem gearbeitet - was aber noch dauern wird.

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.
Debian 11 & 12; Desktop-PC, Headless-NAS, Raspberry Pi 4
Teil des Upstream Betreuer Teams von Back In Time (Debianbackintime)

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: JabRef in unstable: Umgang mit Java-Versions-HickHack

Beitrag von rendegast » 25.03.2018 13:05:03

Du könntest /usr/bin/jabref per

Code: Alles auswählen

JAVA_HOME=/usr/lib/jvm/XXXXXX /usr/bin/jabref

gegebenenfalls
JAVA_HOME=/usr/lib/jvm/XXXXXX ; export JAVA_HOME
/usr/bin/jabref


die Variable sollte java-wrappers.sh imo eher akzeptieren als JAVA_CMD.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

buhtz
Beiträge: 1105
Registriert: 04.12.2015 17:54:49
Kontaktdaten:

Re: JabRef in unstable: Umgang mit Java-Versions-HickHack

Beitrag von buhtz » 25.03.2018 14:00:05

Sowas geht derzeit auch nicht, wegen eines Bugs.
Debian 11 & 12; Desktop-PC, Headless-NAS, Raspberry Pi 4
Teil des Upstream Betreuer Teams von Back In Time (Debianbackintime)

Antworten