Frage

In Linux setzt die JVM der Arbeits direcory gleich den homefolder vom Benutzer. In Windows ist dies der Ordner, in dem das Glas befindet. Wie kann ich, wo das Glas (aus meiner app) finden befindet sich das Arbeitsverzeichnis ändern?

Martijn

War es hilfreich?

Lösung

Versuchen Sie, den Weg in das Gefäß mit diesem Code zu erhalten:

String path = YourClass.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();

Dann können Sie den "* .jar" -Teil entfernen mit:

path=path.substring(0, path.lastIndexOf('/')+1);

Ich hatte das gleiche Problem mit einem Java-Spiel, wenn ich eine Datei im gleichen Verzeichnis das Glas war zu öffnen brauche.

klicken doppelt auf das Glas in Linux nicht die Datei öffnen. Natürlich können Sie eine Befehlszeile öffnen und dir in dem Gefäß dir ändern und dann das Glas von dort laufen, aber ich brauchte das Glas zu verdoppeln klicken.

Andere Tipps

In beiden Fällen ist es das aktuelle Verzeichnis. Unter Windows wird automatisch das aktuelle Verzeichnis auf das Basisverzeichnis des Glases eingestellt, wenn man es aus dem Explorer ausführen. Unter Linux ist das Home-Verzeichnis das aktuelle Verzeichnis für die GUI. So legen Sie das Verzeichnis einen kurzen Shell-Skript schreiben, das das eigentliche Verzeichnis setzt (mit dem CD-Befehl) und führt dann das Glas (mit javaw -jar xyz.jar).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top