asdfjklö schrieb:
Hallo,
auf meinem PC läuft MediathekView wieder und den TV-Browser habe ich als deb-Packet geladen und dann den Browser installiert. Eigentlich sollte ich den Thread als gelöst markieren, aber das gleiche Problem mit dem aufpoppenden MediathekView-Programm und dem TV-Browser habe ich auch auf meinem Laptop. Auf dem Laptop läuft Windows 10 und es ist eine VirtualBox 6.0.6 installiert (ja, noch nicht auf 6.0.8 upgedatet). In der VirtualBox ist eine VM mit Ubuntu 18.04 als Betriebssystem eingerichtet und auch da läuft weder MediathekView noch der TV-Browser. Das installierte Java sieht so aus:
peter@peter-VirtualBox:~$ java -version
openjdk version "11.0.3" 2019-04-16
OpenJDK Runtime Environment (build 11.0.3+7-Ubuntu-1ubuntu218.04.1)
OpenJDK 64-Bit Server VM (build 11.0.3+7-Ubuntu-1ubuntu218.04.1, mixed mode, sharing)
Wie bringe ich MediathekView und den TV-Browser wieder zum Laufen?
Wie gesagt, es hängt davon ab, welche Version von MediathekView und TV Browser Du "installiert" hast. Beides sind Java-Programme, d.h. sie benötigen eine Virtual Machine in einer bestimmten Version. Die Virtual Machine oder VM, das ist das, was du als Java installiert hast. In dem Fall Version 11. Und das in der 64Bit - Version. Oracle hat beginnend mit Java 9 einiges umgekrempelt, so dass Programme, die unter Java 8 laufen, oft nicht mehr unter Java 9 und höher laufen. Was früher i.a. aber der Fall war (Rückwärts-Kompatibilität). Außerdem ist das Benutzen der Oracle-Version von Java mittlerweile kostenplflichtig. Was dazu führt, dass man auf Open JDK ausweichen muss, wenn man es kostenlos haben möchte. Hier muss man dann aber z.B. "Bibliotheken" separat nachrüsten, z.B. Java FX.
Um den Wirrwarr in Grenzen zu halten, würde ich immer zuerst versuchen, die Version eines Java-Programms zu "installieren", das zu meiner aktuell installierten Java Runtime passt. Du hast Version 11 installiert, also würde ich zusehen, mir die passende Version von MediathekView und TV Browser zu installieren. Wenn das nicht geht, kannst Du Dir für das Programm, das nicht unter Java 11 läuft, die passende Runtime lokal installieren.
Laut MediathekView und TV Browser laufen deren beide aktuelle Versionen nur unter Java8. Bei MediathekView gibt es eine Vorab-Version - latest, die auch unter OpenJDK 11 läuft und nichts weiter braucht. Unter https://download.mediathekview.de/unstabil/ lädst Du dir die jüngste 13.2.0 - Version runter. zip oder tar.gz ist egal. Entpacken in ein Verzeichnis Deiner Wahl. Jetzt in das Verzeichnis reingehen, in der das Shell-Script liegt. Ein Terminal öffnen und
eingeben. Sollte starten. Wenn nicht, bitte das was du im Terminal siehst, hier posten. Sollte aber gehen.
Bei TV Browser sieht's etwas anders aus. Der braucht wohl tatsächlich noch Java 8. Hier würde ich der Einfachheit halber tv browser in deinem home-Verzeichnis installieren, wie im Folgenden auch.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 | gve@LINUS:~/tvbrowser-4.0.1$ ./tvbrowser.sh
Starting TV-Browser...
Java exec found in PATH. Verifying...
Suitable java version found [java = 11.0.3 2019-04-16]
Configuring environment...
Loading TV-Browser:
java -Xms16m -Xmx512m -XX:+IgnoreUnrecognizedVMOptions --add-modules=ALL-SYSTEM -Djava.library.path="/home/gve/tvbrowser-4.0.1" -Dpropertiesfile=linux.properties -jar tvbrowser.jar ''
TV-Browser was developed for Sun Java and may not run correctly with your Java implementation.
command line options:
-minimized The main window will be minimized after start up
-nostartscreen No start screen during start up
-fullscreen Start in fullscreen-mode
-ignorejvm Don't check for Sun Java
-safemode Don't load Plugins
18:00:45 INFORMATION: Using settings from file /home/gve/.tvbrowser/4.0.1/settings.prop
18:00:45 WARNUNG: TV-Browser was developed for Sun Java and may not run correctly with your Java implementation.
18:00:45 WARNUNG: Key 'PluginLoader.error.2' not found in resource bundle 'tvbrowser.core.core'
18:00:45 SCHWERWIEGEND: UNCAUGHT EXCEPTION IN THREAD 'main'
java.lang.NoClassDefFoundError: javax/activation/UnsupportedDataTypeException
|
Also, geht erst mal nicht.
2. Versuch mit lokalem Java 8:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 | gve@LINUS:~/tvbrowser-4.0.1$ ./tvbrowser.sh
Starting TV-Browser...
Loading TV-Browser:
/home/gve/tvbrowser-4.0.1/jre1.8.0_211/bin/java -Xms16m -Xmx512m -XX:+IgnoreUnrecognizedVMOptions --add-modules=ALL-SYSTEM -Djava.library.path="/home/gve/tvbrowser-4.0.1" -Dpropertiesfile=linux.properties -jar tvbrowser.jar ''
command line options:
-minimized The main window will be minimized after start up
-nostartscreen No start screen during start up
-fullscreen Start in fullscreen-mode
-ignorejvm Don't check for Sun Java
-safemode Don't load Plugins
18:15:38 INFORMATION: Using settings from file /home/gve/.tvbrowser/4.0.1/settings.prop
18:15:38 WARNUNG: cannot load plugin /home/gve/tvbrowser-4.0.1/plugins/NewsPlugin.jar - already loaded
18:15:38 WARNUNG: iconUrl is not in cache for channelId SKYSPORTUHD. prevUrl=null. currentUrl=577
18:15:38 WARNUNG: iconUrl is not in cache for channelId SKYSPORTBUNDESLIGAUHD. prevUrl=null. currentUrl=577
18:15:38 WARNUNG: iconUrl is not in cache for channelId RTLCRIME. prevUrl=null. currentUrl=http://logos.tvbrowser.org/rtlcrime-03.png
18:15:38 WARNUNG: iconUrl is not in cache for channelId RTLLIVING. prevUrl=null. currentUrl=http://logos.tvbrowser.org/rtlliving-03.png
18:15:38 WARNUNG: iconUrl is not in cache for channelId RTLPASSION. prevUrl=null. currentUrl=http://logos.tvbrowser.org/rtlpassion-01.png
Gtk-Message: 18:15:38.255: Failed to load module "canberra-gtk-module"
18:15:39 WARNUNG: iconUrl is not in cache for channelId TV1000-Comedy. prevUrl=null. currentUrl=769
18:15:39 WARNUNG: iconUrl is not in cache for channelId Viasat-Series. prevUrl=null. currentUrl=769
18:15:39 WARNUNG: Invalid library manifest!
|
Läuft.
Vorgehen wie bei Deinem 32-Bit Ubuntu: Unter java.com bekommst Du wieder die Java8 Runtime für Linux angeboten. Du lädst Dir Linux X64 runter und enpackst es in das tv browser - Verzeichnis. Dann öffnset Du im tv browser - Verzeichnis mit einen Texteditor das Script tvbrowser.sh und änderst es so ab:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132 | #!/bin/bash
# Based on Start-Script provided by Azureus
######## CONFIGURE ########
JAVA_PROGRAM_DIR="" # use full path to java bin dir, ex. "/usr/java/j2sdk1.4.2/bin/"
#PROGRAM_DIR="/home/username/apps/tvbrowser" # use full path to TV-Browser bin dir
##########i#################
MSG0="Loading TV-Browser:"
MSG1="Starting TV-Browser..."
MSG2="Java exec found in "
MSG3="OOPS, your java version is too old "
MSG4="You need to upgrade to JRE 8 or newer from http://java.sun.com"
MSG5="Suitable java version found "
MSG6="Configuring environment..."
MSG7="OOPS, you don't seem to have a valid JRE "
MSG8="OOPS, unable to locate java exec in "
MSG9=" hierarchy"
MSG10="Java exec not found in PATH, starting auto-search..."
MSG11="Java exec found in PATH. Verifying..."
#alternativ den ganzen Abschnitt look_for_java löschen
#look_for_java()
#{
# JAVADIR=/usr/java
# IFS=$'\n'
# potential_java_dirs=(`ls -1 "$JAVADIR" | sort | tac`)
# IFS=
# for D in "${potential_java_dirs[@]}"; do
# if [[ -d "$JAVADIR/$D" && -x "$JAVADIR/$D/bin/java" ]]; then
# JAVA_PROGRAM_DIR="$JAVADIR/$D/bin/"
# echo $MSG2 $JAVA_PROGRAM_DIR
# if check_version ; then
# return 0
# else
# return 1
# fi
# fi
# done
# echo $MSG8 "${JAVADIR}/" $MSG9 ; echo $MSG4
# return 1
#}
JAVA_PROGRAM_DIR="/home/gve/tvbrowser-4.0.1/jre1.8.0_211/bin/"
check_version()
{
TOOL_OPTIONS=`echo $JAVA_TOOL_OPTIONS`
size=${#TOOL_OPTIONS}
if [[ $size -ne 0 ]] ; then
echo "unset JAVA_TOOL_OPTIONS"
unset JAVA_TOOL_OPTIONS
fi
JAVA_HEADER=`${JAVA_PROGRAM_DIR}java -version 2>&1 | head -n 1`
JAVA_IMPL=`echo ${JAVA_HEADER} | cut -f1 -d' '`
if [ "$JAVA_IMPL" = "java" ] ; then
VERSION=`echo ${JAVA_HEADER} | sed "s/java version \"\(.*\)\"/\1/"`
if echo $VERSION | grep "^1.[0-7]" ; then
echo $MSG3 "[${JAVA_PROGRAM_DIR}java = ${VERSION}]" ; echo $MSG4
return 1
else
echo $MSG5 "[${JAVA_PROGRAM_DIR}java = ${VERSION}]" ; echo $MSG6
return 0
fi
elif [ "$JAVA_IMPL" = "openjdk" ] ; then
VERSION=`echo ${JAVA_HEADER} | sed "s/openjdk version \"\(.*\)\"/\1/"`
if echo $VERSION | grep "^1.[0-7]" ; then
echo $MSG3 "[${JAVA_PROGRAM_DIR}java = ${VERSION}]" ; echo $MSG4
return 1
else
echo $MSG5 "[${JAVA_PROGRAM_DIR}java = ${VERSION}]" ; echo $MSG6
return 0
fi
else
echo $MSG7 "[${JAVA_PROGRAM_DIR}java = ${JAVA_IMPL}]" ; echo $MSG4
return 1
fi
}
echo $MSG1
# locate and test the java executable
if [ "$JAVA_PROGRAM_DIR" == "" ]; then
if ! command -v java &>/dev/null; then
echo $MSG10
if ! look_for_java ; then
exit 1
fi
else
echo $MSG11
if ! check_version ; then
if ! look_for_java ; then
exit 1
fi
fi
fi
fi
# get the app dir if not already defined
if [ -z "$PROGRAM_DIR" ]; then
if [ -L $0 ]
then
SL=$(readlink $0)
PROGRAM_DIR=`dirname $SL`
else
PROGRAM_DIR=`dirname $0`
fi
PROGRAM_DIR=`cd "$PROGRAM_DIR"; pwd`
else
if [ "$(echo ${PROGRAM_DIR}/*.jar)" = "${PROGRAM_DIR}/*.jar" ]; then
echo "You seem to have set an invalid PROGRAM_DIR, unable to continue!"
exit 1
elif ! (echo ${PROGRAM_DIR}/*.jar | grep tvbrowser.jar >/dev/null 2>&1 ); then
echo "Unable to locate tvbrowser.jar in $PROGRAM_DIR, aborting!"
exit 1
fi
fi
echo $MSG0
cd ${PROGRAM_DIR}
echo "${JAVA_PROGRAM_DIR}java -Xms16m -Xmx512m -XX:+IgnoreUnrecognizedVMOptions --add-modules=ALL-SYSTEM -Djava.library.path=\"${PROGRAM_DIR}\" -Dpropertiesfile=linux.properties -jar tvbrowser.jar '$@'"
${JAVA_PROGRAM_DIR}java -Xms16m -Xmx512m -XX:+IgnoreUnrecognizedVMOptions --add-modules=ALL-SYSTEM -Djava.library.path="${PROGRAM_DIR}" -Dpropertiesfile=linux.properties -jar tvbrowser.jar "$@"
# ensure disk cache is writte to drive
sync
echo "TV-Browser TERMINATED."
|
Die Zeile JAVA_PROGRAM_DIR="/home/gve/tvbrowser-4.0.1/jre1.8.0_211/bin/" musst entsprechend anpassen, sollte aber klar sein, wie, denke ich.
Speichern und im Terminal ./tvbrwoser.sh aufrufen. Wenn es nicht geht, bitte hier das Ergebnis posten.
Falls Du Einträge im Menü brauchst, wieder mit Alacarte entspr. erzeugen.
Oder aber, du wirfst dein Open JDK 11 wieder runter und installierst dir Oracle Java system weit. Wie bereits beschrieben oder via ppa: http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html.
Dann hast Du allerdings das potentielle Problem, dass du beim nächsten Java Programm, das ein aktuelleres Java braucht, wieder Probleme bekommst...
HTH
gve