Funktioniert MV mit alternativen Java-Derivaten?



  • Ich benutze eine Software von ninite.com um die Standard-Software auf meinem PC aktuell zu halten. Seit dieser Woche kommt statt einem Update für Java, Java64 und JDK eine Fehlermeldung mit dem Hinweis auf deren Homepage. Dort steht zu lesen, dass Oracle für “non-personal use” (?) jetzt $2,50 pro Monat für die Updates verlangt und man bei Ninite die Updates daher nicht mehr anbieten kann.

    Da ich nur ungern das original Update-Programm von Java aktivieren und permanent im Hintergrund laufen haben möchte, würde ich gerne wissen ob mit den beiden Alternativen, die Ninite empfiehlt, Probleme mit MV zu erwarten sind. Bei den Alternativen handelt es sich um Amazon Corretto und AdoptOpenJDK, wobei mir letzteres allein vom Namen her sympatischer wäre, fachlich kann ich das nicht beurteilen.


  • Entwickler

    AdoptOpenJDK scheint einfach ein Build von OpenJDK zu sein. Falls ich das auf die schnelle richtig sehe, dann ja, das kannst du bedenkenlos nehmen - das ist ohnehin der default unter Linux.



  • Ich fürchte, als Java-Noob baruche ich da noch etwas Unterstützung. Ich habe es mit verschiedenen Varianten der 8er Version von adoptopenjdk.net versucht. Aber MediathekView.exe macht gar nix, kurz Eieruhr dann fertig, auch der TaskManager enthält keinen Hinweis auf MV oder Java. Ich habe es dann mit Rechtsklick auf die jar Datei versucht und mit der jeweiligen java.exe bzw javaw.exe gestartet. Hier kommt dann jeweils kurz der MV-SplashScreen und beendet sich dann.

    Ich habe es versucht mit einigen Kombinationen aus JRE/JDK, 32bit/64bit, Hotspot/OpenJ9. Nicht alle möglichen Kombinationen aber sehr viele. Meist habe ich im Installer auch die Zusatzoptionen “JAVA_HOME Variable konfigurieren” und “JavaSoft (Oracle) registry keys” aktiviert.

    Oracle Java hatte ich natürlich vorher in allen Versionen deinstalliert.

    Welche Variante sollte ich für mein Windows 10 Pro 64bit laden und wie schaffe ich es, dass MV damit arbeitet? Da das auf Linux ja Standard ist, sollte es doch eigentlich auch unter Windows klappen, oder?


  • Entwickler

    Ich habe mal die Variante mit OpenJDK 8 und HotSpot heruntergeladen und bei der Installation zusätzlich JAVA_HOME angehakt. MediathekView 13.2.1 startet so einwandfrei bei mir. Ebenfalls Windows 10 Pro 64bit (1809).



  • @bagbag Hast du auch wirklich die Oracle Javas zum Testen deinstalliert?
    Bei mir startet MV auch, wenn ich Adopt zusätzlich installiere, sobald ich aber Oracle Java vorher oder auch hinterher deinstalliere is Schluss mit MV.


  • Entwickler

    Oh, ich war der Meinung ich habe Oracle Java gar nicht installiert (weil ich es für nichts brauche und daher eigentlich nie installiert habe). Jetzt kann ich das gleiche Verhalten wie bei dir beobachten. Splashscreen und fertig.

    Da ich am Java-Client aber nicht mitentwickle, kann ich dir hier leider nicht weiterhelfen. Da muss ein anderer @Entwickler her.


  • Entwickler

    Exception:

    Exception in thread "main" java.lang.NoClassDefFoundError: javafx.concurrent.Task
            at java.lang.ClassLoader.defineClassImpl(Native Method)
            at java.lang.ClassLoader.defineClassInternal(ClassLoader.java:391)
            at java.lang.ClassLoader.defineClass(ClassLoader.java:360)
            at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
            at java.net.URLClassLoader.defineClass(URLClassLoader.java:682)
            at java.net.URLClassLoader.access$400(URLClassLoader.java:89)
            at java.net.URLClassLoader$ClassFinder.run(URLClassLoader.java:1086)
            at java.security.AccessController.doPrivileged(AccessController.java:739)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:589)
            at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:946)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:891)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:874)
            at mediathek.Main.setupPortableMode(Main.java:149)
            at mediathek.Main.main(Main.java:158)
    Caused by: java.lang.ClassNotFoundException: javafx.concurrent.Task
            at java.net.URLClassLoader.findClass(URLClassLoader.java:591)
            at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:946)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:891)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:874)
            ... 15 more
    
    

    Scheint wohl JavaFX zu fehlen.



  • Ganz genau. Durch dein Log konnte ich mir ergoogeln, dass AdoptJDK für Windows derzeit keine JavaFX Libaries beinhaltet. 😞 muss ich wohl noch was warten vor dem Umstieg.

    Danke für die Mühe


  • Entwickler

    Kurzes Googlen: Amazon Corretto scheint JavaFX dabei zu haben. Aber das darfst du selbst ausprobieren 😃



  • Im Changelog zur neuen MV 13.3.0 steht: “JavaFX 13 wurde in das Programm integriert”.

    Bedeutet dies, dass ich jetzt unter Windows Adopt OpenJDK 11 oder 12 nutzen kann, das ja keine JavaFX Libraries beinhaltet?

    Ich kanns erst Montag oder Dienstag selbst ausprobieren. Muss am Wochenende arbeiten.


  • Administrator

    @Mediaspinner Ja, JavaFX wird nicht mehr zusätzlich benötigt.


Log in to reply
 

53
Online

3.6k
Users

2.9k
Topics

18.7k
Posts