LinuxCommandLibrary

josm

Edit OpenStreetMap data

TLDR

Launch JOSM

$ josm
copy

Launch JOSM in maximized mode
$ josm --maximize
copy

Launch JOSM and set a specific language
$ josm --language [de]
copy

Launch JOSM and reset all preferences to their default values
$ josm --reset-preferences
copy

Launch JOSM and download a specific bounding box
$ josm --download [minlat,minlon,maxlat,maxlon]
copy

Launch JOSM and download a specific bounding box as raw GPS
$ josm --downloadgps [minlat,minlon,maxlat,maxlon]
copy

Launch JOSM without plugins
$ josm --skip-plugins
copy

SYNOPSIS

josm [--version] [--help | -?] [--load=<file>] [--download=<minlat>,<minlon>,<maxlat>,<maxlon>] [--download-bbox=<left>,<bottom>,<right>,<top>] [--view=<lat>,<lon>,<zoom>] [files...]

PARAMETERS

--help, -?
    Display help and exit

--version
    Show version information

--load=<file>
    Load specified .osm file(s) on startup

--download=<minlat>,<minlon>,<maxlat>,<maxlon>
    Download OSM data for bounding box

--download-bbox=<left>,<bottom>,<right>,<top>
    Download using left-bottom-right-top coordinates

--download-nearby=<lat>,<lon>[,<radius>]
    Download nearby data around point

--view=<lat>,<lon>,<zoom>
    Set initial map view

--zoom=<level>
    Set initial zoom level

--selection=<query>
    Select objects matching search query

--check
    Run data validator on startup

--language=<code>
    Set UI language (e.g., en)

--download-imagery=<name>
    Download from specific imagery layer

--reset-preferences
    Reset user preferences

--set=<pref>=<value>
    Set preference value

--plugin=<name>
    Load specific plugin

DESCRIPTION

JOSM (Java OpenStreetMap editor) is a powerful, extensible GUI application for editing OpenStreetMap (OSM) data on Linux, Windows, and macOS.

Written in Java, it allows users to view, edit, and upload GPS traces, vector data, and imagery to OSM servers. Key features include advanced validation tools, support for plugins, aerial imagery integration (e.g., Bing, Mapbox), relation editing, custom presets, and conflict resolution during uploads.

Ideal for experienced mappers, JOSM handles large datasets efficiently with customizable workspaces, keyboard shortcuts, and scripting via Lua. It downloads OSM data via API, supports offline work with .osm files, and includes tools like data checker for errors, imagery offset database, and multipolygon tools.

Command-line invocation launches the GUI with presets like bounding boxes or loaded files, making it scriptable for workflows. Requires Java 11+; memory-intensive for big areas.

CAVEATS

Requires Java 11+ installed; GUI-only (no headless mode). Large downloads may timeout or require API access tokens. High memory use for big areas; adjust via -Xmx JVM args. Edits must comply with OSM license.

INSTALLATION

On Debian/Ubuntu: apt install josm. Flatpak/Snap/AppImage available. Verify Java: java -version.

PLUGINS

Extend via Preferences > Plugins: e.g., piclayer, utilsplugin2, contouroverlay. Over 200 available.

API USAGE

Needs OSM API write access; register account at openstreetmap.org. Rate-limited downloads.

HISTORY

Developed since 2006 by Frederik Ramm and Imi Hoxha; now community-maintained via OpenStreetMap Foundation. Major releases add plugins, WMS/WMTS support, and iD-like features. Widely used by 20%+ of OSM editors.

SEE ALSO

osmosis(1), osmium-tool(1), qgis(1)

Copied to clipboard