VERY important message

quäldich-Intern

Einloggen, um einen Kommentar zu verfassen

Installation unter Ubuntu 14.04 - Tourenplaner startet nicht

  • fuzzle, 28.09.2014, 23:36 Uhr
    Hallo,

    ich möchte um eure Hilfe bitten: Ich bekomme den Tourenplaner unter Ubuntu 14.04 einfach nicht zum Laufen. Ich habe die Datei Tourenplaner.jar als ausführbar markiert, sowohl über das Terminal als auch in den Dateieigenschaften, alles versucht. Wenn ich die Datei nun öffnen möchte, passiert gar nichts, es öffnet sich kein Fenster.
    Über den Terminal-Befehl java -jar tourenplaner.jar erscheint der Fehler Error: Unable to access jarfile tourenplaner.jar
    Ist die Datei nicht als ausführbar markiert, kommt die Fehlermeldung "The file '/...tourenplaner.jar' is not marked as executable." und lässt sich dann ebenfalls nicht öffnen.
    Was mache ich nur falsch? Ich benutzte die systemeigene OpenJDK-Java-7-Laufzeitumgebung.

    Für eure Hilfe wäre ich sehr dankbar, ich habe den Tourenplaner früher unter Windows immer sehr gerne benutzt.

    Gruß
    fuzzle
  • alltagsfahrer, 29.09.2014, 07:11 Uhr
    Hallo,

    Im gleichen Verzeichnis wie die Tourenplaner.jar hat es eine ausführbare Textdate "Tourenplaner" klick mal da drauf.


    Viele Grüsse aus Zug, Fritz

  • fuzzle, 29.09.2014, 10:30 Uhr auf alltagsfahrer
    Hallo Fritz,

    wenn ich das mache, öffnet sich nur der Texteditor. Versuche ich, diese Datei über das Terminal als shell-script zu starten, geschieht leider ebenfalls nichts.

    Viele Grüße
    fuzzle
  • Teetrinker, 29.09.2014, 10:36 Uhr
    Hallo,
    keine Ahnung, ob der Tourenplaner mit OpenJDK läuft, ich verwende JDK8 von Oracle (Ex-Sun) und damit geht es. Wie Fritz richtig schreibt, gibt es eine ausführbare Datei (Shellskript "tourenplaner"), die den Tourenplaner startet. Dort musst du ein paar Dinge anpassen:

    • Installationspfad, absoluter Pfad zum Installationsverzeichnis (z.B. prefix=/opt/tourenplaner).
    • Browser, absoluter Pfad zum Webbrowser (z.B. browser="/usr/bin/firefox").
    • opt. GoogleEarth (googleearth="/usr/local/bin/googleearth").

      Ich habe dort noch mehr geändert (z.B. Speicher hochgedreht für Java 64-bit, um mehr Regionen auf einmal laden zu können), aber das ist für den ersten Start nicht notwendig.

      Gruß, Tilmann
  • Teetrinker, 29.09.2014, 10:42 Uhr auf fuzzle
    Hallo,
    mach dir eine Sicherungskopie des Shell-Skripts, mach dann die Änderungen (siehe meinen Beitrag unten), kontrolliere, ob das Shellskript ausführbar ist, und starte es dann direkt im Terminal aus diesem Verzeichnis: ./tourenplaner
    Falls es nicht geht, entferne im Shellskript die Ausgabeumleitungen ("> /dev/null 2>&1" löschen) und sieh dir die Meldungen nach dem Aufruf im Terminalfenster an - damit sollte sich ermitteln lassen, was noch fehlt.
    Gruß, Tilmann
  • alltagsfahrer, 29.09.2014, 19:31 Uhr auf fuzzle
    hallo fuzzle,

    mach mal folgendes: geht zu der Datei -> Rechte maustaste -> ganz nach unten -> Eigenschaften -> Reiter "Zugriffsrechte" -> ausführen -> "Datei als Programm ausführen" aktiviereren.

    und der Inhalt der Datei:

    #!/bin/sh

    # Tourenplaner-Startskript

    # save the current directory
    olddir=`pwd`
    # cd to the directory where the script resides
    cd `dirname $0`

    # get that directory
    prefix=`pwd`
    # go back to where script started
    cd $olddir

    #prefix=/Applications/Tourenplaner.app/Contents/Resources/Java

    class=de.quaeldich.tourenplaner.client.Tourenplaner

    exec_prefix=${prefix}
    exec_class=${class}

    if [ -f "$1" ]; then
    exec java -Xms2048M -Xmx2048M -cp ${prefix}/tourenplaner.jar ${exec_class} -Xdock:name="Tourenplaner" -appdir:${exec_prefix} -notipofday "$1" > /dev/null 2>&1
    exit $0
    else
    exec java -Xms2048M -Xmx2048M -cp ${prefix}/tourenplaner.jar ${exec_class} Xdock:name="Tourenplaner" -Dcom.apple.mrj.application.apple.menu.about.name=JUnit -appdir:${exec_prefix} -notipofday
    fi
    exit 0

    Wobei ich den tourenplaner im directory /usr/Fritz/Tourenplaner habe.

    Viele Grüsse aus Zug, Fritz
  • fuzzle, 29.09.2014, 20:46 Uhr
    Hallo zusammen,

    erst einmal vielen Dank für eure Hilfe. Ich brauche eine Weile, um eure Anregungen umzusetzen, da ich noch nicht so fit mit den ganzen Befehlen bin.
    Jedenfalls habe ich den Tourenplaner nun über das Terminal zum Laufen gebracht. Die Anmerkungen, die Tilman zuletzt gemacht hat: da weiß ich gar nicht, wo ich die ändern soll bzw. wo in der Textdatei diese Änderungen eingefügt werden müssen?
    Ich werde mich jetzt erst einmal darin einarbeiten müssen. Noch funktioniert das Kartenupdate nicht, eventuell habe ich irgendwo noch nicht die erforderlichen Rechte eingeräumt. Der Rest scheint zu funktionieren.

    Viele Grüße
    fuzzle
  • alltagsfahrer, 29.09.2014, 22:14 Uhr auf fuzzle
    Hallo fuzzle,
    einfach nach dem Eintrag "prefix= ...."
    Bei mir ist prefix auskommentiert, weil ich den TP jeweils im Verzeichnis vom TP selber starte.

    Du musst dem TP und allenunterverzeichnisse lese und schreibrechte vergeben:
    In den übergeordneten Ordner gehen -> rechte Maustaste auf den Tourenplanerordner -> ganz nach unten -> Eigenschaften ->Reiter Zugriffsrechte ->
    Besitzer: du selber
    Ordner zugriff : Dateien erstellen und löschen
    Dateizugriff: habe ich keinen eintrag. Da kannst du aber auch lesen und schreiben eintragen
    und ganz unten : Zugriffsrechte auf enthaltene Dateien und Ordner übertragen. Dann musst du das nur einmal im Ordner einstellen


    Viele Grüsse aus Zug, Fritz
  • fuzzle, 29.03.2015, 15:08 Uhr
    Hallo zusammen,

    ich grabe diesen alten Thread noch einmal aus, da ich das Problem immer noch nicht gelöst habe. Ich habe versucht, die Anregungen umzusetzen und den Tourenplaner auch einmal über das Terminal zum Laufen gebracht - weiß aber leider nicht mehr, wie. Allerdings funktionierte er so auch nicht richtig.

    In der Zwischenzeit habe ich alle Java-Software vom Rechner entfernt und JDK8 von Java installiert. Das Problem besteht immer noch, der TP öffnet sich nicht. Will ich ihn über das Terminal ausführen, kommt dort die Meldung "kein Hauptmanifestattribut, in tourenplaner.jar". Spielt es eine Rolle, in welchem Ordner sich der Tourenplaner befindet? (Ich habe auf einer zweiten Festplatte, im Download und dem Dokumenten-Verzeichnis versucht, das Programm zu starten, da ich ihn zunächst nicht in einen Systemordner verschieben wollte. Ich meine aber, das in der Vergangenheit auch bereits getan zu haben, da hat er aber trotzdem nicht funktioniert.
    Hat vielleicht jemand noch den entscheidenden Hinweis oder hilft es mir vielleicht, wenn ich von jemandem den Inhalt des Shellskripts übernehme? Für eure Hilfe wäre ich sehr dankbar :)

    Viele Grüße
    fuzzle
  • alltagsfahrer, 29.03.2015, 23:38 Uhr auf fuzzle
    Hallo,

    geh mal nach links oben auf die Dash Startseite und such nach dem Programm Terminal - so heisst die Shell

    Danach sollte sich ein Fenster öffnen mit so etwas in der Art:
    fritz@fritz-desktop:~$

    Dann tipst du einfach mal folgendes ein :

    java

    Und nun solltest du eine Auflistung diverser Optionen bekommen.

    Dann tippst du mal

    java -version

    und du solltest so etwas bekommen:

    fritz@fritz-desktop:~$ java -version
    java version "1.7.0_09"
    Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
    Java HotSpot(TM) Server VM (build 23.5-b02, mixed mode)
    fritz@fritz-desktop:~$

    Das sollte von überall ohne Fehlermeldung erscheinen. Heisst also: Java wird vom System gefunden.

    Geh einmal in das Tourenplanerverzeichnis und mach einen Klick mit der rechten maustaste auf das Objekt "Tourenplaner" -> geh ganz nach unten auf "Eigenschaften" und dann auf "Zugriffsrechte" -> nach unten und bei "Datei als Programm ausführen" muss ein Haken gesetzt sein. Wenn nicht, dann mach da einen.

    Danach schliessen und wenn du nun auf die Datei "Tourenplaner" klickst sollte ein Fenster öffnen mit

    "Wollen Sie »Tourenplaner« ausführen oder ihren Inhalt anzeigen lassen?" und
    »Tourenplaner« ist eine ausführbare Textdatei.

    Darunter vier Buttons
    "Im Terminal ausführen" - "Abzeigen" - "Abbrechen" "Ausführen"
    Ausführen sollte nun funktionieren. Wenn nicht, dann starte mal mit "Im Terminal ausführen" Und schick mal den Output, den du bekommst ins forum.

    Ansonsten : kann es sein, dass es in der Datei "Tourenplaner" keine solche Zeile hat :
    class=de.quaeldich.tourenplaner.client.Tourenplaner

    Viele Grüsse aus Zug, Fritz

  • thomasg, 30.03.2015, 08:17 Uhr auf fuzzle
    Hallo fuzzle,

    dein Ansatz einfach die jar-Datei als ausführbar zu kennzeichnen kann nicht funktionieren. Dafür brauchst du ein Startskript, das im Installationspaket enthalten ist. Insbesondere muss beim Java-Aufruf die zu startende Klasse explizit angegeben werden - das funktioniert nicht über manifest.

    Gruss, thomas
  • fuzzle, 30.03.2015, 09:34 Uhr auf alltagsfahrer
    Hallo,

    vielen lieben Dank für eure Antworten. Das Ergebnis der Java-Version-Abfrage lautet:

    karsten@karsten-PC:~$ java -version
    java version "1.8.0_40"
    Java(TM) SE Runtime Environment (build 1.8.0_40-b25)
    Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode)

    Scheint also fehlerfrei zu sein. Die Datei selbst ist als ausführbar gekennzeichnet, die Zugriffsrechte sind gegeben, sowohl für den ganzen Ordner, als auch die Datei. Allerdings öffnet sich stets die Textdatei (gedit) des Shellskripts beim Doppelklick, andere Optionen tun sich nicht auf.

    Mir ist es aber gelungen, den Tourenplaner fehlerfrei! zum Laufen zu bringen, mit folgendem Befehl:
    karsten@karsten-PC:~/Dokumente/Tourenplaner$ ./Tourenplaner

    Der Output danach sieht folgendermaßen aus:
    Xdock:name=Tourenplaner
    -Dcom.apple.mrj.application.apple.menu.about.name=JUnit
    -appdir:/home/karsten/Dokumente/Tourenplaner
    -notipofday
    Start ohne Tourenplaner.properties: /home/karsten/Dokumente/Tourenplaner/Tourenplaner.properties
    java.io.IOException: Server returned HTTP response code: 503 for URL: http://www.qdtp.de/TPServer/Statistics?KEY=VERSION&VALUE=1.0.9j
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1839)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1440)
    at java.net.URL.openStream(URL.java:1038)
    at de.quaeldich.tourenplaner.client.data.FileDataSource.sendStatistics(FileDataSource.java:1173)
    at de.quaeldich.tourenplaner.client.TourenplanerApp.main(TourenplanerApp.java:292)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at de.quaeldich.tourenplaner.client.gui.SplashWindow.invokeMain(SplashWindow.java:305)
    at de.quaeldich.tourenplaner.client.Tourenplaner.main(Tourenplaner.java:39)

    Ich hoffe, diese Info hilft euch weiter, ich bin aber schon sehr froh, dass der TP zumindest auf diesem Wege funktioniert und ich wieder meine Touren auswerten kann. :)

    Viele Grüße,
    fuzzle
  • alltagsfahrer, 01.04.2015, 19:19 Uhr auf fuzzle
    Hallo fuzzle,

    Schön, dass der TP endlich läuft. Trotzdem sollte das Teil auch über das Icon ankickbar sein.
    Wenn du auf die Text-Datei - also das Script- mit der rechten Maustaste klickst, dann sollte unter
    "Grundlegend" -> "Typ": "Shell-Skript (application/x-shellscript)" stehen.
    Unter der Lasche "Zugriffsrechte" sollte unter "Besitzer" du selbst angegeben sein und Zugriff für dich Lesen und Schreiben. Der Rest ist egal.

    Ansonsten könntest du ein Terminal öffnen und mit

    chmod Tourenplaner +x

    die Datei ausführbar machen. Allerdings bin ich nicht ganz sicher, ob es nicht umgekehrt ist. also

    chmod +x Tourenplaner

    Wenn du da eine Fehlermeldung bekommst, dann probier die andere Variante. Recklamiert er, dass dir Rechte fehlen würden, dann probier es mit

    sudo

    Sudo steht für "Super user do". Du bist dann eine Ebene weiter, als der Admin und kann alles machen !
    Also bitte zwei mal überlegen.
    Nach sudo fragt er dich nach dem Passwort oder Adminpasswort.
    Einmal drin, machst du alles auf der Superuserebene. Auch root genannt.
    Da machst du dann noch einmal

    chmod Tourenplaner +x

    wenn das erfolgreich war, dann schliess die Shell, respektive das Terminal und probier es über das Icon.

    Der Hintergrund ist wie bei allen Systemen mit grafischen Oberflächen: manchmal wird die Grafikbefehlskette nicht nach unten geschrieben. Ausgelesen wird fast immer auf der unteren Ebene, weil das viel einfacher zum programmieren ist, als auf der Grafikebene.


    Apropo Dank: Der gebührt eigentlich mehr den anderen, als mir.
    Tilman und allen voran Thomas machen viel mehr als als ich.

    viele Grüsse aus Zug, Fritz

    PS: Edit meint ich soll naoch was zu "jar" sagen:
    Jar ist die Abkürzung für "Java runtime" und eigentlich ist es ein ZIP-Archiv, welches man hervorragend mit dem "Archivbetrachter" anschauen, kann, einzelne Dateien editieren kann, speichern und mit dem archivbetrachter wieder mit den Änderungen als jar speichern kann. - der grosse Vorteil von Ubuntu - auf anderen Systemen geht das nicht so geschmeidig.

    Fritz
  • Felixxx, 31.10.2016, 18:44 Uhr
    Hallo zusammen,

    wir haben es jetzt auch probiert, auch mit den Tipps von hier, den TP zum laufen zu bekommen. Bislang kommt bei jedem Start des Skripts (das wir leider immer über das Terminal starten müssen, obwohl die entsprechenden Einstellungen wie beschrieben sind) folgende Meldung:

    Xdock:name=Tourenplaner
    -Dcom.apple.mrj.application.apple.menu.about.name=JUnit
    -appdir:/home/jessi/Dokumente/Quäldich/Tourenplaner
    -notipofday
    Start ohne Tourenplaner.properties: /home/jessi/Dokumente/Quäldich/Tourenplaner/Tourenplaner.properties
    Exception in thread "main" java.lang.InternalError: Failed to invoke main method
    at de.quaeldich.tourenplaner.client.gui.SplashWindow.invokeMain(SplashWindow.java:309)
    at de.quaeldich.tourenplaner.client.Tourenplaner.main(Tourenplaner.java:39)
    Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at de.quaeldich.tourenplaner.client.gui.SplashWindow.invokeMain(SplashWindow.java:305)
    ... 1 more
    Caused by: java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/JPEGImageEncoder
    at de.quaeldich.tourenplaner.client.gui.ImageProvider.getImage(ImageProvider.java:64)
    at de.quaeldich.tourenplaner.client.gui.ImageProvider.getBufferedImage(ImageProvider.java:52)
    at de.quaeldich.tourenplaner.client.gui.DrawSettings.<init>(DrawSettings.java:110)
    at de.quaeldich.tourenplaner.client.gui.MapPanel.<init>(MapPanel.java:64)
    at de.quaeldich.tourenplaner.client.TourenplanerApp.initApplication(TourenplanerApp.java:598)
    at de.quaeldich.tourenplaner.client.TourenplanerApp.main(TourenplanerApp.java:203)
    ... 6 more
    Caused by: java.lang.ClassNotFoundException: com.sun.image.codec.jpeg.JPEGImageEncoder
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 12 more

    Die Java-Abfrage hat allerdings keine Fehler ausgegeben...wir sind aber auch nicht sonderlich versiert mit dem Umgang mit Linux ;) Kann uns vielleicht jemand weiterhelfen? Das wär klasse! System ist Ubuntu 16.04. Vielen Dank :-)
Einloggen, um zu kommentieren