Hallo Leute,

ich habe mir ein kleines ShellScript geschrieben,
das aus zwei Verzeichnissen *.class und *.jar Files
zu meinem String zusammenf�gt, der den ClassPath
repr�sentiert und im Anschluss ein JavaProgramm mit
der Option -classpath ausf�hrt.

Hier der Code:
--------------------------------------------------------------
   #!/bin/sh

   jarPath=$INSTALL_PATH/jars/
   OOo_Path=$OOo_home
   OOo=$OOo_home/program/classes
   APP=CustAppl
   classPath=.:classes/

   cd $jarPath

   for file in *
   do
      if [ -f "$file" ]
         then
            classPath=$classPath:jars/$file
      fi
   done

   cd $OOo

   for oojars in *
   do
     if [ -f "$oojars" ]
        then
           classPath=$classPath:$OOo/$oojars
     fi
   done

   cd $INSTALL_PATH

   $JAVA_HOME/bin/java -classpath \"$classPath\" $APP &
   echo "Launching Application ...
   exit
--------------------------------------------------------------

Die Variablen $INSTALL_PATH und $OOo_home werden automatisch
bei der Installation durch einen IzPack-Installer ersetzt.

F�hre ich das Script mit den korrekt ersetzten oben genannten Variablen aus f�hrt das ganze zu einer ClassNotFoundException.

Das Kuriose daran ist allerdings, wenn ich die ganze "Ausf�hrZeile" mit java etc. in eine Datei umleite, also dann :

------------------------------------------------------------------
     echo $JAVA_HOME/bin/java -classpath \"$classPath\" $APP  > start
     chmod 755 start
     ./start
------------------------------------------------------------------

und diese aus dem Script ausf�hre funktioniert das ganze wunderbar !?!
Die Datei start wird dann im Installationsverzeichnis erzeugt, also bin ich auch im richtigen Verzeichnis.


Das Programm startet auch, wenn ich die Zeile einfach �ber echo auf der Konsole ausgebe, die Zeile kopiere und dann auf der Kommandozeile ausf�hre.

Ich kann mir das ganze wirklich nicht erkl�ren, aber vielleicht wei� jemand von Euch rat :)

Markus


--
Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/


Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)



Antwort per Email an