Kann man JOSM mit einer festgelegten jos oder joz Datei starten?

Ich verwende JOSM in Verbindung mit OpenWebStart. Dabei lade ich, nachdem JOSM aktiv ist, fast immer die gleiche jos-Datei. Kann man irgendwie einstellen, dass diese Datei automatisch geladen wird?

Viele Grüße aus der Wetterau
Uwe

Entschuldige bitte die Frage, aber was ist eine .jos-Datei?

JOSM hat mehrere Dateiformate, das es verarbeitet für seine Ebenen/Sitzungen.
Klassisch sind die Daten für eine Ebene, die runtergeladen wurde in einer .OSM Datei gespeichert.
Hat man seinen Stand nicht gespeichert und möchte die Sitzung beenden kann man dies als JOZ-Datei speichern.
In einer JOS-Datei verbindet man nun eine Sitzung. Also in dieser sind sogesehen die .OSM und die aktuell angewählten weiteren Hintergrundlayer gespeichert.

1 Like

Genau. Im Prinzip speichert man die aktuelle Sitzung. Wenn man bein nächsten Start von JOSM diese Datei angibt, sollte man den gleichen Zustand erhalten, wie man ihn verlassen hat.

Mit JavaWebStart scheint das nicht möglich zu sein.

Beim direkten Aufruf von Java mittels Command-Line oder Batch-File können aber Programm-Argumente an JOSM übergeben werden, die das automatische Öffnen von Dateien ermöglichen.

Im folgenden Beispiel lädt JOSM beim Start die Datei D:\JOSM\DATA\filename.jos

java -jar josm.jar --download=D:\JOSM\DATA\filename.jos

https://josm.openstreetmap.de/wiki/Help/CommandLineOptions#Programarguments

1 Like

Funktioniert das wirklich?

WARNING: Warning - Cannot open 1 file because file does not exist or no suitable file importer is available.<br><ul><li>/home/emvee/NL_OSM_basis_layers.jos (does not exist)</li></ul></html>

> ls -l /home/emvee/Documents/NL_OSM_basis_layers.jos
-rw-r–r-- 1 emvee users 5921 Sep 14 08:33 /home/emvee/NL_OSM_basis_layers.jos

Nicht mit Windows, sondern mit Linux, aber ich denke, das macht keinen Unterschied.

Ich habe es auch mit file:/// und file:///// versucht, aber dann bekomme ich:

WARNING: java.net.URISyntaxException: Illegal character in path at index 88: file:///home/emvee/NL_OSM_basis_layers.jos

Unter Linux hab ich dazu keine Erfahrung. Mit Win10, Java 1.8.0_301 und JOSM 18543 funktioniert es bei mir. Möglicherweise verwendest du eine ältere JOSM-Version, die den jos-Dateityp noch nicht unterstützt.

Oder die Meldung because file does not exist ist irreführend und es gibt einen anderen Grund, warum auf die Datei nicht zugegriffen werden kann - z.B. Rechte…? - wenn der Dateipfad so passt.

1 Like

Evtl. ist irgendwo ein Leerzeichen zuviel?

1 Like

Ja, bei mir funktioniert das problemlos. In Deiner Fehlermeldung hast Du allerdings /home/emvee/NL_OSM_basis_layers.jos statt /home/emvee/Documents/NL_OSM_basis_layers.jos. Falls das ein Symlink ist, oder anderweitig identisch, vergiss meinen Kommentar.

Was auch nicht funktioniert: --download=~[…], weil ~ da nicht aufgelöst wird. Hast Du nicht gemacht, wollte es nur anmerken.

1 Like

Ja, Fehler gemacht, ich hatte ein Shell-Skript mit:

$DOWNLOAD="--download=/home/emvee/NL_OSM_basis_layers.jos"
$JAVA -Xms2048M -Xmx8192M -jar $JAR "$DOWNLOAD $@"

aber das ist falsch, was funktioniert:

$JAVA -Xms2048M -Xmx8192M -jar $JAR $DOWNLOAD "$@"