Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Problem mit Script zum starten von Java-Programmen

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Sonstiges
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
HarryBO



Anmeldungsdatum: 10.08.2001
Beiträge: 20

BeitragVerfasst am: 29. Jun 2004 0:36   Titel: Problem mit Script zum starten von Java-Programmen

Moin,
ich hab mir ein kleines Scipt geschrieben (siehe unten), mit dem ich JAVA-Programme per Klick ausführen kann. Funktioniert soweit. Allerdings stört mich, dass es nur mit dem Gnome-Terminal funktioniert und nicht mit dem xterm. Wenn ich statt 'gnome-terminal' 'xterm' einsetze, dann kommt immer eine Fehlermeldung in der Art, Datei oder Verzeichnis nicht gefunden. Kann mir einer erklären, warum? Ich war der Meinung xterm nutzt auch die .bashrc für die Umgebungsvariablen, oder etwa nicht? Und 'env' gibt im XTerm eigentlich auch alle notwendigen Pfade aus ... *grübel*

Das zweite kleinere Problem, das ich habe, ist der Rückgabewert von 'zenity' ... gibt es da kein ESC bzw. -1? Ich wollte eigentlich, dass das Scipt beim drücken von ESC abgebrochen wird, aber das klappt irgendwie nicht ... *schon wieder grübel*

BITTE helft mir! Das ist gaaaannz doll wichtig. Bitte! Bitte! Bitte! Very Happy

Gruß
HarryBO

Code:

#!/bin/sh
# Script zum automatischen ausfuehren von *.class und *.jar Dateien
# unter Gnome (Dateien mit dem Script als Ausfuehrungsbefehl verknuepfen)
#
# Die folgende Zeile editieren
JAVA=/usr/java/bin/java
# Ab hier nicht mehr veraendern!
SF=`echo $1|sed 's/\.class//'`  # wenn Klasse ".class" entfernen, sonst nichts
DIR=`dirname $SF`               # kompletten Verzeichnispfad holen
FILE=`basename $SF`             # Programmname holen
JAR=`echo $1|grep jar`          # fuer 'test' vergleichbare ->
CLASS=`echo $1`                 # Zeichenketten holen
# Ins Arbeitsverzeichnis wechseln, da Java Verzeichnisse als Klassen(archiv)
# betrachtet und so dem eigentlichen Programmnamen voranstellen wuerde.
# Wuerde z.B. fuer '/home/user/java/Programm' in 'home.user.java.Programm'
# geaendert werden.
cd $DIR # gilt nicht fuer die Ausfuehrung in der Konsole???
# Dialog wie gestartet werden soll
zenity \
--question \
--title="Java-Programm \"$FILE\" ausfuehren" \
--text=\
"Programm im Terminal ausfueren?
 
Bei Wahl von \"Abbrechen\" wird das Programm
als normale X-Anwendung ausgefuehrt!"
# Ausfuehrung je nach Wahl
case $? in
    0)  # Ja/Nein Klasse oder Jar-Archiv in der Konsole ausfuehren
        if [ "$CLASS" != "$JAR" ]
          then gnome-terminal --hide-menubar --working-directory $DIR \
               -e "$JAVA $FILE"
          else gnome-terminal --hide-menubar --working-directory $DIR \
               -e "$JAVA -jar $FILE"
        fi
        ;;
    1)  # Ja/Nein Klasse oder Jar-Archiv unter X ausfuehren
        if [ "$CLASS" != "$JAR" ]
          then $JAVA $FILE
          else $JAVA -jar $FILE
        fi
        ;;
   -1)  # eigentlich fuer Abbruch mit ESC-Taste bzw. sonstige
        # Ausfuehrungsfehler gedacht. Geht aber nicht, weil der
        # Rueckgabewert bei Abbruch immer '1' ist????
        exit 0
        ;;
esac
 
Benutzer-Profile anzeigen Private Nachricht senden

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Sonstiges Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy