Problme mit args Argumenten

Status
Nicht offen für weitere Antworten.

thomas.g

Bekanntes Mitglied
Hi,

ich habe ein Problem mit den Übergabeparametern meines Programms von der main Methode.

Normale starte ich ja mein Programm über die Konsole so: java meinProgramm datei.typ

Danach öffnet mein Programm automatisch diese Datei.
Ich möchte allerdings machen, dass wenn ich auf diese Datei doppelt klicke, dass dann mein Programm gestartet wird und der Pfad zu dieser Datei mitübergeben wird.

Wie kann ich das am besten machen?

thx, thomas
 

MPW

Top Contributor
Moin,

das hat aber nix mit Java zu tun, ich weiss nur, wie das unter Windows geht, dazu musst du im Windows Explorer auf Ordnereigenschaften, Typen und dann einen neuen anlegen. Und dann fuegst du als Kommando Oeffnen mit deinem Programm an.
 
S

SlaterB

Gast
hab grad mal sowas versucht, falls man nicht direkt Java verknüpfen kann geht auch eine .bat-Datei mit dem Befehl
java Klassenname %1
 

MPW

Top Contributor
SlaterB hat gesagt.:
hab grad mal sowas versucht, falls man nicht direkt Java verknüpfen kann geht auch eine .bat-Datei mit dem Befehl
java Klassenname %1


Achso, und warum sollte das nicht gehen? Und wenn die bat verschuett geht, geht nix mehr...
 

MPW

Top Contributor
0 schimmer, da musste entweder warte, bis hier ein Linuxbelasteter kommt, oder in ein Linuxforum gehen:)
 
S

SlaterB

Gast
also ich hab noch nie auf eine .class-Datei doppelt geklickt,
bei einer schnell getesteten Verknüpfung mit java.exe bekomme ich derzeit Exceptions,

zumal man für manche Programme ja auch einen Classpath angeben möchte,
da dann vielleicht doch ne .bat ;)
 

Illuvatar

Top Contributor
Wenn du aus dem Programm heraus (afaik plattformunabhängig) festlegen willst, dass dein OS bei einem Dateityp etwas amchen soll (also dein Programm aufrufen), kann ich nur immer wieder JDIC empfehlen.
 

thE_29

Top Contributor
Ein .bat Datei und eine .sh Datei mit %1 bzw $1 und dann braucht man keine ext. Library mit JNI!
 

Bleiglanz

Gesperrter Benutzer
unter Linux bleibt eingentlich nur das shell zeugs

=> sowas wie "Starten per Mausklick" kann man zwar einrichten, aber das funktioniert nicht global sondern immer nur für den KDE, für den GNOME, usw.

lässt man lieber ganz weg :)
 

thomas.g

Bekanntes Mitglied
Hi,
in Linux will mein MediaPlayer die Dateien per Doppelklick noch immer nicht starten, ich hab jetzt eine .sh Datei erstellt die sich bei doppelklick auf einer .mp3 Datei auch öffnet, allerdings erhalte ich keine args paramater, vielleicht erkennt ja wer den Fehler
thx, thomas

meine .sh Datei

cd /windows/C/Dokumente\ und\ Einstellungen/Thomas/Projekte/GWTSoftMediaPlayer/build/classes
java GWTSoft_MediaPlayer/main/GWManager $1
 

thE_29

Top Contributor
Schreib das noch dazu


echo $1 > /tmp/test_args.txt

Bzw, $@ (glaube das sind alle args)

und schau was rauskommt!
 

thomas.g

Bekanntes Mitglied
Hi,

ich hab den Fehler gefunden, und zwar hatte ich einen Pfad mit " " (Leertasten) drinnen, d.h. er hat für jeden durch Leertaste geteilten String ein eigenes args Element gemacht, deswegen konnte mein MediaPlayer die Datei nie finden.

Nun hab ich einfach das $1 mit "$1" geschrieben, jetzt gehts.

thx für die Hilfe, thomas
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben