K
KlausPetersen
Gast
Hallo,
ich habe mir unter BSD (FreeBSD) ein kleines Java-Prog. geschrieben, welches ich gerne im bin-Ordner habe so das ich es direkt aufrufen kann.
Sprich:
Ich bin in irgend einem Ordner und möchte nun "meinProg datei.txt" mittels Shell aufrufen.
Dies geht ja leider nicht, sondern ich muss ja 'java meinProg' aufrufen und dann auch noch in dem Ordner sein indem sich 'meinProg.class' befindet.
Deswegen dachte ich mir, schreibe ich einen kleinen Shell Skript, den ich auch mit in bin abspeichere, und diesen dann sage, er soll 'java meinProg $*' aufrufen.
Wenn ich im bin Ordner mich befinde, klappt der Aufruf von meinProg.sh problemlos.
Befinde ich mich aber irgendwo anders im Dateisystem, meckert java rum, dass er die Klasse 'meinProg' nicht finden kann.
Was ist nun die eleganteste Methode dieses zu lösen?
Ich will irgendwo im Dateisystem 'meinProg eineDatei.txt' per Shell aufrufen und mein Java Programm soll gestartet werden.
Sollte man dies mittels Shell Script machen, oder gibts da eine andere bessere Lösung?
Wie müsste der Shell Script aussehen, bzw. andere Frage, kann ich irgendwie sagen, dass die Main Methode aus .../meinProg.class gestart werden soll?
Paar Infos noch dazu:
Der Shell Script soll auch funktionieren, wenn man ihn in ein anderen Ordner verschiebt, eine feste Pfadangabe ist problematisch.
Andere Frage:
Ich habe versucht meinProg.class in eine Jar Datei zu packen:
jar -cvf meinProg.jar meinProg.class
Dann aufrufen:
java -jar meinProg.jar
führt zu:
Failed to load Main-Class manifest attribute from
drucken.jar
meinProg.class kann ich aber ganz normal ausführen.
Wodran liegt das?
Hoffentlich weiß jmd. weiter, bin langsam am verzweifeln
ich habe mir unter BSD (FreeBSD) ein kleines Java-Prog. geschrieben, welches ich gerne im bin-Ordner habe so das ich es direkt aufrufen kann.
Sprich:
Ich bin in irgend einem Ordner und möchte nun "meinProg datei.txt" mittels Shell aufrufen.
Dies geht ja leider nicht, sondern ich muss ja 'java meinProg' aufrufen und dann auch noch in dem Ordner sein indem sich 'meinProg.class' befindet.
Deswegen dachte ich mir, schreibe ich einen kleinen Shell Skript, den ich auch mit in bin abspeichere, und diesen dann sage, er soll 'java meinProg $*' aufrufen.
Wenn ich im bin Ordner mich befinde, klappt der Aufruf von meinProg.sh problemlos.
Befinde ich mich aber irgendwo anders im Dateisystem, meckert java rum, dass er die Klasse 'meinProg' nicht finden kann.
Was ist nun die eleganteste Methode dieses zu lösen?
Ich will irgendwo im Dateisystem 'meinProg eineDatei.txt' per Shell aufrufen und mein Java Programm soll gestartet werden.
Sollte man dies mittels Shell Script machen, oder gibts da eine andere bessere Lösung?
Wie müsste der Shell Script aussehen, bzw. andere Frage, kann ich irgendwie sagen, dass die Main Methode aus .../meinProg.class gestart werden soll?
Paar Infos noch dazu:
Der Shell Script soll auch funktionieren, wenn man ihn in ein anderen Ordner verschiebt, eine feste Pfadangabe ist problematisch.
Andere Frage:
Ich habe versucht meinProg.class in eine Jar Datei zu packen:
jar -cvf meinProg.jar meinProg.class
Dann aufrufen:
java -jar meinProg.jar
führt zu:
Failed to load Main-Class manifest attribute from
drucken.jar
meinProg.class kann ich aber ganz normal ausführen.
Wodran liegt das?
Hoffentlich weiß jmd. weiter, bin langsam am verzweifeln