JOSM Screenshot, showing the geo-tagged images feature.
JOSM Screenshot with (outdated) landsat.jar and mappaint.jar plugin.
JOSM的全名是"Java OpenStreetMap Editor"由Immanuel Scholz開發，目前的維護者是Frederik Ramm。官方網站為http://josm.openstreetmap.de/ ，你可以在那裡下載最新版本。 latest version (the nightly build). 需要Java 8以上的版本。
目前還有OpenStreetMap的其他編輯器，例如：線上編輯器Potlatch和Merkaartor。那麼何時該使用JOSM，何時又該選擇其他的編輯器呢？Well, JOSM is a feature-rich editor for the experienced OSM mapper. It requires some installation and configuration efforts. But if you intend to become a great OSM mapper, it's worth the time you need to get used to it. And if this sounds complicated: it's not if you are a bit familiar with computers.
- 你只是希望命名一條道路。這種情形，你應該考慮使用online editor。
although note that the opengl option can cause problems with window managers on Linux.
為了執行 JOSM，你的電腦必須安裝 Java 8 版。 很不幸的是 Mac OS 10.3.x 上面並沒有 Java 1.5 版。
然後你只要下載 JOSM jar 檔案。檔案可以在主站找到。
Various people started hacking on JOSM, so there are different flavours and plugins available. While the main JOSM trunk is at http://josm.openstreetmap.de/, you can download modified versions of JOSM, plugins or external tools that enhance JOSM.
首先，為了執行 JOSM，你必須安裝 Java。
Note: If you have another JVM installed, either select the sun java vm by specifing its executeable (/usr/lib/jvm/java-6-sun/java) or
update the system configuration by invoking "update-java-alternatives -s java-6-sun"
Standard installation with Portage:
emerge -av josm
If you are interested in latest development version of josm and extra plugins use the OpenStreetMap Gentoo Overlay.
There are many plug-ins already available as ebuilds. Look at http://svn.openstreetmap.org/applications/utils/gentoo/ for a complete list.
JOSM packages are available in the openSUSE's build service, in the Application:Geo repository.
Go to http://download.opensuse.org/repositories/Application:/Geo/, select you distibution and find the RPM in the noarch directory. Install using RPM or your favourite package manager.
Example for openSUSE 10.3 using zypper:
zypper ar http://download.opensuse.org/repositories/Application:/Geo/openSUSE_10.3
zypper in josm
Use this for openSUSE OneClick install:
Mac OS X
- Java 1.5 is already installed with OS X 10.4 or later.
A list of plugins is on the JOSM/Plugins page in this Wiki, and also in the JOSM Wiki. Plugins are installed as described below:
Linux & Mac OS X
- Install Java Runtime, if not already installed
- To install plugins, save them in
- Install Java Runtime, if not already installed.
- On the latest version of JOSM (April 2007), put the plugins in the directory is C:\Documents and Settings\your user name\Application Data\JOSM\plugins
How to start JOSM
The jar file needs to be passed to the Java runtime. This step is different to the various platforms:
java -jar josm.jar in a shell. There are also some tutorial videos. One describes the steps to set up KDE for starting JOSM by clicking on the JAR file. Get the tutorials from one of the mirrors listed at openstreetmap.de.
Ubuntu users have a good tutorial at UbuntuForums. If you use Ubuntu 8.04 LTS and install JOSM via package, you will simply use
If you need to use it from behind a proxy, you can tell it to the java runtime like
java -Dhttp.proxyHost=192.168.1.1 -Dhttp.proxyPort=3128 -jar josm.jar, with the IP and port of your proxy.
If you need ipv6, you can tell it to the java runtime with
java -Djava.net.preferIPv6Addresses=true -Dhttp.proxyHost=proxy.ipv6.uni-leipzig.de -Dhttp.proxyPort=3128 -jar josm/josm-snapshot-xxx.jar
The proxy here is only mentioned because the openstreetmap-server doesn't support ipv6 yet.
You can use the following script to use always the latest Josm Version:
DCOPREF=`kdialog --title "Hole JOSM" --progressbar "Hole JosmLatest" 100`
wget -N http://josm.openstreetmap.de/download/josm-latest.jar
dcop "$DCOPREF" close
$JAVA_HOME/bin/java -Xmx1024M -DproxyHost=$PROXY -DproxyPort=8080 -jar josm-latest.jar
Usually you can just double click on the josm.jar file to start JOSM.
In the rare case that this doesn't work, create a text file named start_JOSM.bat with a simple text editor, for example Notepad. Write the following line in the file:
java -jar josm.jar
Save this .bat file into the same directory where josm.jar is located. Now you can just double-click on the .bat file and JOSM will start up.
You can also set up a shortcut to the JOSM.jar file which allows the inclusion of additional parameters. I have the following as the short cut "Target" in my Start Menu which starts a control prompt window (useful to see progress of uploads/downloads), loads JOSM in its separate window, and assigns 512mb of memory for the process which dramatically speeds up operation when editing dense data. Change "path" to the full path of your josm-latest.jar file.
C:\WINDOWS\system32\java.exe -jar -Xmx512M "C:\path\josm-latest.jar"
Mac OS X systems
You need Mac OS 10.4 or better. 10.3 will not do the job. In 10.4.x, simply double click on the jar file and Java should load the JOSM jar file. If you need to allocate more memory to JOSM (in order to edit larger files), the following script will help:
java -jar -Xmx256M -XX:MaxPermSize=256M josm-latest.jar
- 這裡有一些有用的教學影片 
- If you have a GPX tracklog file of the ways you want to map, start JOSM. Choose File → Open to select and load your track. JOSM will automatically fit the workspace to the bounding box of your track.
- If you don't have a GPX tracklog file then you may want to use data collected from other users. See Korea Mapping Guide
- If you want to play around while learning how to use JOSM without changing the data on the server then just don't upload (downloading is OK), delete the layers you changed, and then start over.
- To exchange data with the server ensure you have entered your username and passphrase in the preferences of JOSM. Your username is not your wiki username but the email address you used for registering.
- Now choose File → Download from OSM. In the following dialog ensure that the checkbox to get OSM data is enabled and press the OK button. Always download before uploading.
- If the track is too long, the server will refuse to send you the OSM data for that area. Zoom in a bit to restrict the request to a reasonable size.
- Wait a bit until all the data has been received. If there are existing ways of your area in the database, you will now see them in JOSM.
- Now start your editing session. Be careful when changing existing data, as streets and nodes can have lots of tags assigned.
- The JOSM manual is available online here, and these pages can also be accessed by pressing F1 from within JOSM. If you really mess things up simply delete the layers that have been changed before you do an upload and then start over.
- See here for a list of default shortcuts.
See also JOSM/Advanced Tricks (more tips for more experienced users)
- 在安裝外掛之後，你必須去 preferences 啟動或關閉這些外掛。
- For users new to OSM, it is recommended to use a presets file for easier tagging. Ask for one in the mailing list or User:SlowRider
- If you do not have a wheelmouse, you can zoom in and out using the key combo Ctrl-. (period) and Ctrl-, (comma).
- If you mapped one lane of a motorway, find here a tool which creates the opposite lane for you.
- The node dragging sensitivity is set quite low. You will probably find that setting the threshold to 5 will make it more sensitive. In Advanced Preferences add a key named edit.initial-move-threshold and give it a value of 5.
Automatically Matching Photos to GPS traces
One of the problems when out mapping with a GPS is trying to keep accurate notes about the street names as you pass each junction. If you have a digital camera to take out with you, JOSM can help.
- take a photo of your GPS screen/display showing the time (on the GPS) when you start
As you are travelling around, take a picture at appropriate places/junctions/road signs. Then, when you get home with your completed GPS track uploaded into JOSM:
- In the "Layers" box, top right
- Right click on the GPS track layer, for the layer you have just uploaded. Note: you must do it from a layer you have just uploaded, and not from data that was downloaded from OSM, as that apparently no longer has a timestamp.
- Select "Import Images" (or possibly "import photos")
- Right click the photos layer,
- Sync the clocks using the (camera's timestamp on the) photo you took at the start (of the GPS screen/display clock)
- If you do not have a picture of the GPS for some reason, turn on the camera and GPS now. Work out the time difference between them. Now, subtract or add this to the time shown in the 'sync clocks' photo dialog.
The "Geotagged photos" feature is built in to JOSM. However you might like to try out the AgPifoJ plugin which works in a similar way, but offers enhanced reliability and usability.
For more information see Photo Mapping
Automatically Matching Sound Recordings to GPS traces
There is now a similar facility for applying and synchronizing sound recordings.
There are three methods, described with step-by-step instructions, in the JOSM Help:
1. Continuous audio with GPS waymarks
With this method, you collect explicit waypoints along your track using the buttons on your GPS and at the same time dictate onto a continuous sound recording on your voice recorder what the waymark represents on the ground - a street name or point of interest. Your GPS notes three key pieces of information about each waypoint - its location, the time it was made, and it's name or number. The audio and waypoint data are then synchronized in JOSM so that you can play back each description by clicking on a Marker representing the waypoint.
2. Continuous audio with vocally-identified points of interest
With this method you also make a continuous sound recording but instead of entering waypoints into your GPS you dictate an audible cue for each point of interest, for example "MARK! River Lane Primary School on left".
3. Audio clips with waymarks
With this method, you make waypoints to identify locations of interest. However you record a separate audio file for each one and the name of each file is added as a <link> element in the corresponding waypoint in the GPX file before loading into JOSM. When JOSM then creates the Audio Marker for each waypoint, it knows which audio clip to play when you click on the marker.
For more information see Audio mapping
JOSM error messages
Error while parsing. An error has occurred
The most likely cause of the above error is that the server is slow and has not sent the required response back to JOSM. If this occurs just try uploading the data again, and JOSM will resume from where it left off.
If you get error 412 precondition failed, it means that something changed on server in unexpected way. Try deleting affected objects.
JOSM seems to start okay, but the window is blank
If you have the fancy, compiz/beryl graphics stuff enabled, then this may happen. The solution is simple, add the following line to the user profile:
Here's a few notes from a beginner's (Parsingphase) first couple of days working on OSM, using the JOSM editor (on Mac OS X).
- "Installing" JOSM on OS X is a cinch — just download and double-click the .jar file.
- Use a two-button mouse with a scroll wheel — it makes life much easier. Right-dragging moves the map, the scrollwheel zooms.
- Otherwise, command-click (aka "Apple-click") does a right click, ctrl-arrows to move the map, and ctrl-, and ctrl-. to zoom.
- Because it starts with a dot, your ~/.josm directory will be invisible to the Finder. You either have to move the plugins into it from the command line, or open the folder using "Go to Folder..." ("Go" menu in the Finder).
- There's a Mac OS X look and feel under the Edit → Preferences menu; it doesn't actually change any functionality but it fits in ;)
Points for all platforms
- to select different ways which use the same nodes, then middle click the way then hold ctrl and left click the way you want
- Get the "mappaint" rendering mode. It makes it far easier to see what's going on in your maps (and even work out where on earth you are), at the expense of slightly higher processor load on your machine (my PowerBook 12" copes fine). (This plugin has now been integrated into JOSM and can be turned on and off from the View menu > Wireframe view.)
- Upload and download small areas, frequently. The less time you've got unstored or unchecked changes, the lower the risk of conflict with other users.
- Always download an area before you start work on it, even if you have your own GPX data.
- Always download the area you are going to upload before doing so, to get any modifications made by other users and avoid overwriting data.
- When downloading an area you get all the data within the rectangular bounding box you choose, and also, where any way within that bounding box extends outside the box it is completely downloaded. It therefore becomes difficult to precisely know which areas you have downloaded full data for. If you check the "Draw boundaries of downloaded data" box (found in Edit > Preferences > Display Settings), a yellow rectangle is drawn around all the areas for which full data has been downloaded. Caution should be exercised when adding new data to areas outside these rectangles as it may duplicate already existing data, which you have not downloaded.
- A "small area" to start with might either be that from a short GPX track you've taken, or about a 1-km square around a known location. This equates to about 0.06° of latitude/longitude (give or take polar distortion), so enter an area about that size into the File → Download from OSM → Bounding Box.
- Rural areas with less detail might work better with larger areas — the 1-km recommendation is about right for a suburb of London.
- Once you're viewing an area in JOSM, at whatever zoom level, the JOSM download dialog box will default to the currently viewed area.
- It's very easy to select more than you expect to, particularly when making "ways". Open the "Current Selection" panel (Alt-e, fifth button up on the left) to keep an eye on what you've selected.
- Switch back to "select" mode regularly and click on nothing or type Ctrl-Shift-A to clear your select list.
Why don't my changes appear?
- See Map Features for how to specify that your way is a road/railway etc, and what type. If you're not sure of the type (e.g. primary/secondary) be conservative and choose the lesser (e.g. secondary).
- The slippy maps may not contain your changes immediately - see FAQ entry